昨天写一个C程序用到了,字符数组。我是这样初始化的:
char str[10];
str[10]="led";
结果怎么也编译不过,后来看了谭浩强的C语言才知道:
赋值方式
对字符数组只能对各个元素赋值,不能用以下办法对字符数组赋值:
char str[14];
str = "I love China!";
而对字符指针变量,可以采用下面的方法赋值:
char *a;
a = "I love China!";
对字符指针变量赋初值:
char *a = "I love China!";
等价于
char *a;
a = "I love China!"
而对数组的初始化:
char str[14]={"I love China!"};
不能等价于
char str[14];
str = "I love China!";
即数组可以在定义时整体赋值,但不能在赋值语句中整体赋值。
文章评论(0条评论)
登录后参与讨论