c语言结构体方面的问题

小弟初学者在编程的时候遇到了一个问题
struct std{
char nane[4];
};
struct std student;
student.name={a,c,f,g};

这个样子的问题是不是那里搞错了。。。。为什么会提示错误啊!

6个回答

字符串只有在声明的时候才能初始化,其它时候赋值只能一个字符一个字符的赋值,或者通过strcpy之类的函数。
改成:struct std student ={"abcf"};

student.name={a,c,f,g};

student.name={'a','c','f','g'};

nihui123
nihui123 回复stank1985_csdn: 这个事开辟一个储存空间的意思啊
4 年多之前 回复
stank1985_csdn
stank1985_csdn 试试 snprintf(student.nane,sizeof(student.nane)+1,"%s","acfg");
4 年多之前 回复

把std换个名字吧。

木木木森土土土土f

ssssssssssssssssssssssssssssssss

struct std student;
student.name={a,c,f,g};

你上面的步骤就给student命名了,为什么到下面这一步瞬间就变成了student了 ?

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问