c - 分配和初始化结构变量

标签 c struct initialization

<分区>

我正在 main() 中初始化一个结构数组;当我分别声明和分配它们时出现错误。

这是我在 main() 中的代码片段;

struct item newitem[10];
newitem[0]={1,"pen",5,10};
struct item new2= {2,"ygh",9,0};

这是我在第 2 行遇到的错误。 然而,第 3 行工作正常。

[错误] '{' 标记前的预期表达式

可能是什么原因?

最佳答案

你必须使用复合文字:

newitem[0] = (struct item) {1, "pen", 5, 10};

关于c - 分配和初始化结构变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49993828/

相关文章:

c - 位移运算符似乎换行?

c - 如何获取函数返回值的指针?

c - 如何在 C 中的结构内、 union 内使用结构?

java - Spring Boot 2 多数据源初始化架构

java - 空白最终本地 vs 空白最终字段

c - 如何在 Eclipse IDE 中运行简单的 C 程序

c - 在没有 [] 和 () 运算符的情况下在 C 中打印出一个数组 - 怎么做?

c - 从 C 中的大结构中获取子结构

go - 将未知长度的 slice 中的值分配给 Go 中的结构体?

constructor - 使用构造函数初始化 F# 对象