Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

ฉันจะประกาศอาร์เรย์ 2d ใน C ++ โดยใช้ new . ได้อย่างไร


อาร์เรย์ 2 มิติแบบไดนามิกนั้นเป็นอาร์เรย์ของพอยน์เตอร์ไปยังอาร์เรย์ นี่คือไดอะแกรมของอาร์เรย์ 2 มิติที่มีขนาด 3 x 4

ฉันจะประกาศอาร์เรย์ 2d ใน C ++ โดยใช้ new . ได้อย่างไร

อัลกอริทึม

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

โค้ดตัวอย่าง

#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;
}

ผลลัพธ์

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