gpt4 book ai didi

c++ - 访问冲突写入位置 0xCCCCCCCC 创建二维数组

转载 作者:行者123 更新时间:2023-11-27 23:37:14 25 4
gpt4 key购买 nike

我正在尝试创建一个动态二维数组。

这是我的代码:

bool b_alloc_table_2_dim(int ***piTable, int iSizeX, int iSizeY)
{
*piTable = new int*[iSizeX];
for (int ii = 0; ii < iSizeX; ii++)
*piTable[ii] = new int[iSizeY]; // here i get the exception
return true;
}

int main()
{
int **x ;
b_alloc_table_2_dim( &x, 3, 5);

return 0;
}

我找不到代码有什么问题。在调用我的函数后,x 应该指向二维数组。

最佳答案

[] 运算符优先于 *cppreference

所以行

*piTable[ii] = new int[iSizeY];

相当于

*(piTable[ii]) = new int[iSizeY];

你想写的是:

(*piTable)[ii] = new int[iSizeY];

关于c++ - 访问冲突写入位置 0xCCCCCCCC 创建二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58382548/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com