C语言中二维数组的初始化规则如下:
使用大括号 {} 初始化数组元素,每行使用逗号分隔。
初始化的值的数量必须与数组的大小相匹配。如果初始化值的数量少于数组的大小,剩余的元素将被自动初始化为0。
初始化的值的数量可以多于数组的大小,但只有前面的值会被用于初始化数组元素,剩余的值将被忽略。
初始化的值可以是常量、变量或表达式。
例如,对于一个3行4列的二维数组,可以这样初始化:
int arr[3][4] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
其中,数组元素的值为:
1 2 3 4
5 6 7 8
9 10 11 12
如果初始化的值数量少于数组的大小,剩余的元素将被自动初始化为0。例如:
int arr[3][4] = {
{1, 2},
{5, 6, 7},
{9}
};
其中,数组元素的值为:
1 2 0 0
5 6 7 0
9 0 0 0
如果初始化的值数量多于数组的大小,只有前面的值会被用于初始化数组元素,剩余的值将被忽略。例如:
int arr[3][4] = {
{1, 2, 3, 4, 5},
{6, 7, 8, 9},
{10, 11, 12}
};
其中,数组元素的值为:
1 2 3 4
6 7 8 9
10 11 12 0