Computer >> Máy Tính >  >> Lập trình >> lập trình C

Mảng đa chiều trong C / C ++

Trong C / C ++, Mảng đa chiều được định nghĩa bằng những từ đơn giản là mảng các mảng. Trong mảng nhiều chiều, dữ liệu được lưu trữ dưới dạng bảng (theo thứ tự chính của hàng). Sơ đồ sau đây cho thấy chiến lược phân bổ bộ nhớ cho một mảng nhiều chiều có kích thước 3 x 3 x 3.

Mảng đa chiều trong C / C ++

Thuật toán

Begin
   Declare dimension of the array.
   Dynamic allocate 2D array a[][] using new.
   Fill the array with the elements.
   Print the array.
   Clear the memory by deleting it.
End

Mã mẫu

#include <iostream>
using namespace std;
int main() {
   int B = 4;
   int A = 5;
   int** a = new int*[B];
   for(int i = 0; i < B; ++i)
      a[i] = new int[A];
   for(int i = 0; i < B; ++i)
      for(int j = 0; j < A; ++j)
          a[i][j] = i;
   for(int i = 0; i < B; ++i)
      for(int j = 0; j < A; ++j)
         cout << a[i][j] << "\n";
   for(int i = 0; i < A; ++i)
      delete [] a[i];
      delete [] a;
   return 0;
}

Đầu ra

0
0
0
0
0
1
1
1
1
1
2
2
2
2
2
3
3
3
3
3