C语言笔记:第4章 字符串和格式化输入输出
字符串简介:
字符串(character string)是一个或多个字符的序列,如下所示:
char name[40] = "Zing went the strings of my heart!"
双引号不是字符串的一部分。双引号仅告知编译器它括起来的是字符串,正如单引号用于标识单个字符一样。
C语言没有专门用于储存字符串的变量类型,字符串都被储存在char类型的数组中。
数组由连续的存储单元组成,字符串中的字符被储存在相邻的存储单元中,每个单元储存一个字符(见图4.1) 。
注意图4.1中数组末尾位置的字符\0,这是空字符(null character),C语言用它标记字符串的结束。空字符不是数字0, 它是非打印字符, 其ASCII码值是(或等价于)0。
C中的字符串一定以空字符结束,这意味着数组的容量必须至少比待存储字符串中的字符数多1。如果没有这个结束标记,说明这个字符数组存储的并不是字符串。
因此,程序清单4.1中有40个存储单元的字符串,只能储存39个字符,剩下一个字节留给空字符。
字符串常用处理函数
printf函数和scanf函数
printf函数输出格式详解:
https://www.cnblogs.com/Ahair/p/5017050.html
https://www.cnblogs.com/wucongzhou/p/12668766.html
scanf函数输入格式详解:
https://www.cnblogs.com/morya/p/6067479.html
https://www.cnblogs.com/wucongzhou/p/12691780.html
常用的格式:
转义列表:
其他字符串操作函数(strcpy,strncpy,strcat,strncat,strlen,strcmp,strchr,strpbrk,atoi,atof,atol):
https://www.cnblogs.com/jixiaohua/p/11330096.html
https://www.cnblogs.com/xionghj/p/4443891.html