1、字符数组
(1)初始化
- 和普通数组一样
char str[15]={'h','e','l','l','o'};
- 直接赋值(仅限初始化)
char str[15]="hello";
(2)输入输出
- scanf,printf
有%c和%s两种格式,其中%c用来输入单个字符,可以识别空格和换行并将其输入,%s用来输入字符串并存在字符数组里,通过识别空格或换行来结束字符串的输入,且不用加&
- getchar/putchar:用于输入输出单个字符
- gets/puts:用于输入输出一行字符串(好处是不用通过for循环一个个输入,这样也就不用知道数组大小来设置循环界限)
gets识别换行符结束,因此scanf后要用gets,记得在中间加一个getchar吸收换行符,puts输出一行字符串后紧跟一个换行
(3)常用函数(头文件string.h)
- 求长度:strlen(),可得到字符数组第一个\0前的字符个数
- 复制:strcpy(str1,str2),将str2复制给str1
- 大小比较:strcmp(str1,str2),按字典序比较,若str1<str2,返回一个随机负整数,=返回0,>返回一个随机正整数
- 拼接:strcat(str1,str2),将str2拼在str1后面
(4)存放方式
2、string类型(头文件string)
cin遇到空格结束,不包含空格
求长度:str.length()/str.size()
3、其它
字符型数字转整数型数字:str-'0'
大写字母转为小写字母:str-'A'+'a'
字符‘:F’转为数字15:‘F’-‘A’+10;