在结构中初始化一个数组(w/和值数组)

Initialize an array inside of a struct (w/ and array of values)

是否可以在 C 中用结构内部的值初始化数组?

#include <stdio.h>

struct student{
    int student_number[2];
    };

int main(void){

    struct student {
        int student_number = {35434, 56343};
    }

    struct student example_student;

    printf("%i \n", example_student.student_number[0]);


    return 0;
} 

编辑: 谢谢,Eric P,这消除了我对遇到的其他示例的一些困惑。

编辑以上代码以显示修复:

struct student{
    int student_number[2];
};

int main(void){

    struct student example_student = {
        .student_number = {35434, 56343}
    };

    printf("%i \n", example_student.student_number[0]);

您可以在定义结构对象时对其进行初始化,这包括在结构内部初始化数组成员:

struct student example_student = { { 35434, 56343 } };

也可以具体指定要初始化的结构体成员:

struct student example_student = { .student_number = { 35434, 56343 } };