我想从我的 double 指针获取一维数组。指针的内存分配如下:
listOfTxtsContents = new int *[ROWS];
for( int i = 0 ; i < ROWS ; i++ )
{
listOfTxtsContents[i] = new int[COLUMNS];
for(int j = 0; j < COLUMNS; ++j)
listOfTxtsContents[i][j] = 0;
}
然后每一行都包含一些数据,我想以这种方式将其放入数组中,以便一维数组将填充连续的行。
最佳答案
很确定这样的事情应该有效:
array[ROWS * COLUMNS];
for(size_t i = 0; i < ROWS; ++i)
memcpy(array + i * COLUMNS, listOfTxtsContents[i], COLUMNS * sizeof(int));
关于c++ - 如何从int **中快速获取一维int数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8844975/