如何在结构内初始化int数组成员。当我尝试这样做时,编译器会出错

时间:2016-03-08 02:37:58

标签: c

struct dev
{
    arr[4];
}  Person1;

int main()
{
    Person1.arr[4] = {1, 2, 3, 4 };
}

1 个答案:

答案 0 :(得分:4)

您可以使用初始化程序初始化对象。

struct dev
{
    int arr[4]; /* add type of elements, or it won't compile */
} Person1 = {
    .arr = {1, 2, 3, 4}
};

在这种情况下你可以简单地这样写(按照声明成员的顺序写入用于初始化的数据):

struct dev
{
    int arr[4]; /* add type of elements, or it won't compile */
} Person1 = {{1, 2, 3, 4}};