一维数组
char s[10];
s可以存储的字符串的最大长度(字符串中字符的个数)为9个字符,在最后一个字符后面存储一个字符'\0'(ASCII码为0的字符)作为字符串的结束标志
char s2[10]={"student"};
char s3[10]="student";
char s4[]="student";
cahr s1[20]={'s','t','u','d','e','n','t','\0'};
上面的字符数组初始化时,除了第一种形式,其余的都会在在最后一个字符的后面自动加上'\0',对于最后一种形式,程序必须显式地加上'\0',因为它是按照单个字符来初始化的,而不是字符串。s1、s2、s3都占用都占用10个字符的存储单元,s4占用8个字节。
二维数组
char ch[][20]={"hello world","student ","just"};char str[]="Jiangsu";
cout << str;//输出Jiangsu
cout << ch[0];//输出hello world
cout << ch[1];//输出student
cout << ch[2];//输出just
字符串处理函数
头文件cstring和string.h中包含了一些字符串函数,这些函数处理的字符串必须以'\0'结束
1-计算字符串长度函数
int strlen(const char s[]);
功能:计算'\0'之前的的字符个数
2-字符串拷贝函数
char *strcpy (char dst[],cosnt char src[]);
功能:将src字符串复制到dst指定的字符数组dst中加上一个'\0'
3-字符串拼接函数
char *stcat(char dst[],cosnt char src[]);
功能把src中的字符串拼接到dst中原来字符串的后面,从dst最后的'\0'的位置开始增加。
4-字符串比较函数
原则:依次比较两个字符串同位置的一对字符,若他们的ASCII码相同,则继续比较下一对字符、若他们的ASCII码不同,则ASCII码大的字符所在的字符串大,若所有字符均相同,则两个字符串相等;若一个字符串中的字符比较完了,而另一个字符串中还有字符,则还有字符的字符串大
stccmp(a,b);
a大返回1,a等于b返回0,a小于b返回-1
5-字符串的大小写转换
char *strupr(char src[]);
把小写字母转换成大写字母
char* strlwr(char src[]);
把大写字母转换成小写字母