小编use*_*041的帖子

指针指针动态二维数组

这个网站上的第一个计时器,所以这里..

我是C++的新手,我目前正在阅读"DS Malik的数据结构使用C++第二版"一书.

在书中,Malik提供了两种创建动态二维数组的方法.在第一种方法中,将变量声明为指针数组,其中每个指针都是整数类型.恩.

int *board[4];
Run Code Online (Sandbox Code Playgroud)

..然后使用for循环创建'列',同时使用指针数组作为'行'.

第二种方法,您使用指针指针.

int **board;
board = new int* [10]; 
Run Code Online (Sandbox Code Playgroud)

等等

我的问题是:哪种方法更好?**方法对我来说更容易可视化,但第一种方法可以大致相同的方式使用.两种方式都可用于制作动态二维数组.

编辑:上面的帖子不够清楚.这是我尝试过的一些代码:

int row, col;

cout << "Enter row size:";
cin >> row;
cout << "\ncol:";
cin >> col;

int *p_board[row];
for (int i=0; i < row; i++)
    p_board[i] = new int[col];

for (int i=0; i < row; i++)
{
    for (int j=0; j < col; j++)
    {
        p_board[i][j] = j;
        cout << p_board[i][j] << " ";
    }
    cout << endl;
}
cout << …
Run Code Online (Sandbox Code Playgroud)

c++ arrays pointers memory-management dynamic-arrays

26
推荐指数
2
解决办法
14万
查看次数