int *tmp1;
int **tmp2;
int *tmp3;
tmp1 = new int[3*4];
tmp2 = new int *[3];
for (int i=0; i<3; i++)
{
tmp2[i] = new int[4];
}
for (int i=0; i<3; i++)
{
for (int j=0; j<4;j++)
{
tmp2[i][j]=i*4+j;
}
}
memcpy(tmp1,tmp2,3*4*sizeof(int))
代码可以运行,但是tmp1没有被赋值,请问:如何将二维指针tmp2通过memcpy函数复制给一维指针tmp1?
非常感谢~
很简单啊,就跟你分配空间的顺序一样啊:
for (int i=0; i<3; ++i)