在C語言中,數組越界確實支持多維數組
#include <stdio.h>
int 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。訪問越界位置可能導致程序崩潰或產生不可預測的行為。