1、繁琐知识点总结
- 对数组元素赋初值的时候,不能省略列数,但是可以省略行数
- 数组的下标可以是整数或者整形表达式
- putchar是输出一个字符,而不是字符串
- string类型的数据在结尾处还是有' \0 '的
2、
3、
4、
5、
答案:T
解析:
char *str和char str[]之间的区别
(1)在C语言中字符串常量的本质表示其实是一个地址(“China”这种的就是字符串常量)
- C语言中编译器会给字符串常量分配地址,如果 "China", 存储在内存中的 0x3000、0x3001、0x3002、0x3003、0x3004、0x3005 ,因此,当写“China”的时候,实际上代表的是 "China"这个字符串的首地址0x3000
- 你把China 看作是字符串,但是编译器把它看作是地址 0x3000,即字符串常量的本质表现是代表它的第一个字符的地址
(2) char *s;
是定义的一个指针变量(它的地址在运行的时候才能确定),它指向一个字符型数据,它是可以被赋值的,同时也可以进行自增自减运算寻找连续的下一个地址。指针变量和普通变量是一个道理的,不同的只是指针变量存放的是地址,而普通变量存放的是数值或字符等。
(3)char *s = "China&#