C++char和string的区别
'a'是char, "a"是char string,这两者都是普通的字符和字符串,和C中没什么不同值得注意的是后者包含两个字符,末尾有⼀个隐⾝的'\0'
⽽:string str = "a" 是C++ string 注意:C++中的char string和string不是⼀回事
当⽤到了"string"这个关键词,就不是普通的字符串,⽽是⽤到了封装后的类
在C++中,char仍然是⼀个primitive type(原始类型),⽽string已经经过封装,成为了⼀个class(类)⽤到它时,我们需要 #include <string>,它是C++ Standard Library (C++标准库)的⼀部分
string这个类包括很多成员函数,⽐如push_back(), insert(), append()等,详情见:
1.如何给char*赋值
1.1 char* 字符串常量赋值
char*p="abc";//因为abc是个字符常量,在常量区,p在栈中;
p[0]是⽆法修改字符常量的,但是p可以重新定向; p="bcd";
char name[20];name="abc";//出错,因为name是个地址常量,系统不允许它赋值。
1.2 char* new分配地址赋值
char*p=NULL;
p=new char[100];
cin>>p;
2.如何给char**赋值
第⼀步:必须⽤new给⼆级指针分配地址
char**s=NULL;
c++string类型s=new char*[3];
第⼆步:按照char*的⽅式赋值
1。字符常量赋值
s[0]="abc";
s[1]="cbd";
2. new分配地址
for(int i=0;i<3;i++)
{
s[i]=new char[100];
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论