【字符串】
1. C语言里所有文字信息必须记录在一组连续的字符类型存储区里
2. 所有文字信息必须以'\0'字符做结尾,这个字符的ASCII码就是数字 0
符合以上这两个特征的内容就可以用来在C语言程序中代表文字信息
他们叫做"字符串"
字符串里'\0'字符前面的是有效字符
所有的字符串都可以用"字符类型指针"表示
"字符串字面值",用两个双引号中间包含的一组字符表示,例如
"hello,world!", "%^&*"
编译器会编译的时候会自动在字符串字面值后面加上'\0'字符
编译器在编译的时候会把字符串字面值替换成第一个字符所在的存储区地址
printf("%p\n", "abc"); // 地址 (十六进制)
printf("%c\n", *"abc"); // a (演示)
printf("%d\n", *("abc" + 3)); // 0 ('\0'字符)
字符串字面值在执行过程中不可以修改(若修改会出现段错误)
内容一样的字符串字面值在程序执行过程中只有一份
多个连续的字符
1. C语言里所有文字信息必须记录在一组连续的字符类型存储区里
2. 所有文字信息必须以'\0'字符做结尾,这个字符的ASCII码就是数字 0
符合以上这两个特征的内容就可以用来在C语言程序中代表文字信息
他们叫做"字符串"
字符串里'\0'字符前面的是有效字符
所有的字符串都可以用"字符类型指针"表示
"字符串字面值",用两个双引号中间包含的一组字符表示,例如
"hello,world!", "%^&*"
编译器会编译的时候会自动在字符串字面值后面加上'\0'字符
编译器在编译的时候会把字符串字面值替换成第一个字符所在的存储区地址
printf("%p\n", "abc"); // 地址 (十六进制)
printf("%c\n", *"abc"); // a (演示)
printf("%d\n", *("abc" + 3)); // 0 ('\0'字符)
字符串字面值在执行过程中不可以修改(若修改会出现段错误)
内容一样的字符串字面值在程序执行过程中只有一份
多个连续的字符