初始化结构体数组的数组

Rob*_*rtK 2 c multidimensional-array

我正在尝试在 C 中初始化结构数组的数组。这可能吗?

说明问题的示例(无法编译):

typedef struct myStruct
{
    int row;
    int cols;
} myStruct;

myStruct dataSets[][] =
{
    myStruct dataSet1[]
    {
        {0,1},
        {0,2},
        {0,3},
    },

    myStruct dataSet2[]
    {
        {1,1},
        {1,2},
        {1,3},
    }
};
Run Code Online (Sandbox Code Playgroud)

dbu*_*ush 6

初始化多维数组时,仅可以省略外部数组维度。您也不需要指定嵌套初始值设定项的类型,因为该类型是从上下文中隐含的:

myStruct dataSets[][3] =
{
    {
        {0,1},
        {0,2},
        {0,3},
    },
    {
        {1,1},
        {1,2},
        {1,3},
    }
};
Run Code Online (Sandbox Code Playgroud)