在C++中,可以使用數組的數組(array of arrays)來創建二維數組。
下面是創建二維數組的一種常見方法:
// 定義二維數組的行數和列數
const int rows = 3;
const int cols = 4;
// 創建二維數組
int arr[rows][cols];
這樣就創建了一個大小為3行4列的二維數組arr
。可以通過arr[row][col]
來訪問特定位置的元素,其中row
是行索引(從0開始),col
是列索引(從0開始)。
可以使用循環來遍歷和操作二維數組的元素:
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
// 訪問二維數組的元素
arr[i][j] = i + j;
}
}
注意,這種方法創建的二維數組是在棧上分配內存的,因此其大小在編譯時必須是已知的。如果需要在運行時動態創建二維數組,可以使用指針和new
運算符:
// 動態創建二維數組
int** arr = new int*[rows];
for (int i = 0; i < rows; i++) {
arr[i] = new int[cols];
}
// 訪問和操作二維數組的元素
arr[0][0] = 1;
arr[1][2] = 3;
// 釋放二維數組的內存
for (int i = 0; i < rows; i++) {
delete[] arr[i];
}
delete[] arr;
注意,動態創建的二維數組需要手動釋放內存,以避免內存泄漏。首先使用delete[]
釋放每一行的內存,然后再使用delete[]
釋放指向行指針的內存。