C语言对字符数组的赋值

来源:百度知道 编辑:UC知道 时间:2024/07/06 13:34:06
char str[14]={"I love china!"};为什么不能写成char str[14];str[]={"I love china!"};

在C语言中,字符串赋值是不能用=的.只能在定义的时候使用.在定义后赋值要用赋值函数strcpy().你的程序中可以使用strcpy(str,"I love china!")来完成.这个函数声明包含在string.h文件中

{""}赋值只能用于声明初始化的时候,不能后来使用

显然错,char str[14]是固定大小的字符数组,而str[]是不确定大小的字符数组。是两个不同的数组,而且在同一模块中数组名不能相同。可以这样改
char str[]={"i love china!"};字符个数为14(末尾有个‘\0’)或者char str[14]={"i love china!"};