深入理解c指针_学习笔记_5.0指针和字符串

第四章:深入理解c指针_学习笔记_4.0指针和数组
https://blog.csdn.net/haimaer/article/details/81451183

1:c中有2种不同的字符串
  单字节字符串:由char组成的序列(定义在string.h)
  宽字符串:由wchar_t组成的序列,16位宽或者32位宽,(定义在wchar.h中)主要是为了支持非拉丁字符集,如:支持外语的应用程序
上述字符串结尾都是以NUL结尾,但是NUL不计入字符串长度,仅仅作为一个结束标志。且在给字符串分配空间时要预留NUL的空间。
NUL与NULL是不同的:
    NUL是char类型,定义为‘\0’,
    NULL是表示一个特殊的指针,通常定义为((void *)0)

2:字面量池 ???什么东西咋没听说过

深入理解c指针_学习笔记_5.0指针和字符串

3:字符串字面量一般分配在只读内存中,是不可改变的,但是在GCC编译器中,字符串字面量的值是可以被修改的,但是这不是我们期望的结果,故通常这部分会被定义成常量const。

4:字符串字面量 & 字符字面量
  –>前者“”双引号是一个字符串,后者‘’单引号,是一个整数

5:标准字符串操作–>比较,复制,拼接
strcmp() 比较
strcpy() 复制
strcat()拼接
具体的函数怎么使用在此不多说,实际使用中多练习就知道。