初始化结构数组的数组

Initialize an array of an array of structs

我正在尝试在 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},
    }
};

初始化多维数组时,只能省略数组的外层维度。您也不需要指定嵌套初始化程序的类型,因为该类型是从上下文中隐含的:

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