《C语言从入门到精通》中,第十一章光盘\TM\sl\11\5中
strcpy(pStruct->cName,"SuYuQun");
为什么不能换成赋值语句
pStruct->cName="SuYuQun";
或者
student.cName="SuYuQun";
换了之后就显示错误
谢谢
cui_mrkj
学分:0 LV1
TA的每日心情
2020-08-20 13:57:19
char cName[]是字符数组,cName是数组名。
数组名是数组的首地址,是一个常量,不能对常量赋值。
如果结构体里用的是指针(如 char *p;),则可以用指针去指向字符串,可以写成:
student.p = "SuYuQun";
亲亲小老虎
学分:0 LV1
TA的每日心情
2022-11-12 11:37:30
明白了,万分感谢,不过书中P269中的解释就应该是错误的
cui_mrkj
学分:0 LV1
TA的每日心情
2020-08-20 13:57:19
[FIELDSET][LEGEND]引自:2楼[/LEGEND]
明白了,万分感谢,不过书中P269中的解释就应该是错误的
[/FIELDSET]
回复:
不客气