在C语言中,数组越界确实支持多维数组
#includeint main() { int arr[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; int i, j; for (i = 0; i < 3; i++) { for (j = 0; j < 3; j++) { printf("%d ", arr[i][j]); } printf("\n"); } // 数组越界访问 printf("%d ", arr[3][0]); // 输出未定义,可能导致程序崩溃 return 0; }
在这个例子中,我们定义了一个3x3的二维数组arr
。通过嵌套循环,我们可以访问数组中的每个元素。然而,当我们尝试访问arr[3][0]
时,我们访问了数组的一个越界位置,因为数组的有效索引范围是从0到2。访问越界位置可能导致程序崩溃或产生不可预测的行为。