小编Chi*_*096的帖子

分配结构字段时,"错误:赋值给表达式,数组类型错误"(C)

我是初学C程序员,昨天我学习了C结构的使用以及这些结构可能应用于特定问题的解决方案.然而,当我尝试使用我的C IDE(Codeblocks 16.01)来学习C编程的这个方面时,我遇到了一个奇怪的问题.代码如下:

#include <stdio.h>

#define N 30

typedef struct{
     char name[N];
     char surname[N];
     int age;
} data;

int main() {
     data s1;
     s1.name="Paolo";
     s1.surname = "Rossi";
     s1.age = 19;
     getchar();
     return 0;
}
Run Code Online (Sandbox Code Playgroud)

在编译期间,编译器(Windows下的GCC 4.9.3-1)向我报告了一个错误

"错误:赋值给表达式,数组类型错误"

在指导上

s1.name="Paolo" 
s1.surname="Rossi" 
Run Code Online (Sandbox Code Playgroud)

如果我这样做的话

data s1 = {"Paolo", "Rossi", 19};
Run Code Online (Sandbox Code Playgroud)

有用.我究竟做错了什么?

c arrays string struct initialization

31
推荐指数
3
解决办法
15万
查看次数

标签 统计

arrays ×1

c ×1

initialization ×1

string ×1

struct ×1