char a[]字符数组?
字符数组
字面意思是数组,数组中的元素是字符。。确实,这就是它的本质意义。
char str[10];
定义了一个有十个元素的数组,元素类型为字符。
C语言中定义一个变量时可以初始化。
char str[10] = {"hello world"};
当编译器遇到这句时,会把str数组中从第一个元素把hello world\0 逐个填入。。
由于C语言中没有真正的字符串类型,可以通过字符数组表示字符串,因为它的元素地址是连续的,这就足够了。
C语言中规定数组代表数组所在内存位置的首地址,也是 str[0]的地址,即str = &str[0];
而printf("%s",str); 为什么用首地址就可以输出字符串