C-串:
char buffer[7]=“Hello!”;
//若buffer[6],则出错,(字符字面值buffer,类型为char)
‘H'|'e'|'l'|'l'|'o'|'!'|0 //空间存储格式,以全0位字节作为结束符。
C-串的空间长度为字符串长度加1;
C-串的类型为char*,说的更精确一点是const char* 。char* 成为字符指针,它与字符数组虽然类型不同,但操作上是一样的,都表示C-串的起始地址
char* str ="Hello";
cout <<*str <<endl; //显示H
cout <<str <<endl;//显示Hello
字符数组是不可以直接比较和赋值的,下面的就是错误的:
hello"=="hello"? "":"not"//错:数组 是不能直接比较大小的,比较相同的c-串时,会因空间位置不能而不同
char a1[6]="hello";
chat a2[6]=a1;//错:数组是不能直接复制的
c-串操作:头文件
strcmp(str1,str2);//比较
strcpy(a,str1);//复制给a
strcat(a,s);//连接
strrev(a);//倒置
strset(a,'c');//设置,将a数组的所有值设为c
strstr(s1,"ell");//查找串
strchr(s1,'c');//查找字符
string与string.h是不一样的,string是指string字符串,string.h头文件是指多字符空间操作的库函数集合。