我目前正在尝试为一个赋值编写代码,就在我认为我可以完成的时候,我不断收到太多初始化错误,这是一个赋值,所以它必须是一个 int
这是我的结构:
struct Address {
int streetNumber;
char streetName[41];
int apartmentNumber;
char postalCode[8];
char city[41];
};
这是我的代码:
int main(void) {
struct Address addy = { { 0,"",0,"","" } };
当我放下第二个 {}
时,它可以工作,但我正在上传的服务器不会接受它,除非我使用双 {}
。
最佳答案
下面的初始化器有问题
struct Address addy = { { 0,"",0,"","" } };
因为 struct Address
的第一个成员,即 streetNumber
,不能用 { 0,"",0,"",""}
。
这就是编译器警告您的内容。
您多了一副牙套。将该行更改为:
struct Address addy = { 0, "", 0, "", "" };
对您看到该错误的其他行进行类似的更改。
关于c - 继续收到 "too many initializers"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55114511/