帮忙做下简单的C语言题

来源:百度知道 编辑:UC知道 时间:2024/05/28 09:57:37
下面哪一项是不正确的字符串赋值或赋初值的方式. ( )

A. char str;str="string";

B. char str[7]={'s','t','r','i','n','g'};

C. char str1[10];str1="string";

D. char str1[]="string",str2[]="12345678";

希望能给出说明,谢谢!

C. char str1[10];str1="string";
不能直接给赋值给数组名。但允许在定义的时候初始化比如:
char str1[]="string";
如果要在定义后赋值可以用函数:
strcpy(str1,"string")

A. char str;str="string"; 也有错误,改用指针就可以了
比如: char *str;str="string";

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

C 因为str1是数组名不能用于赋值,如果是str1[1]="string"

C

A