我想在之前动态分配的二维数组中添加一行,但编译器给出了一个错误,即在我试图为新行分配新内存的行需要左值。
#include<iostream>
//#include<stdlib.h>
using namespace std;
int main()
{
int (*p)[2] = new (int [5][2]);
for(int i =0; i<5; i++)
{
for(int j =0; j<2; j++)
{
p[i][j]= i;
}
}
// p = (int **) realloc(void*, 12)
int **l = (int **)p;
(l+5) = new int[1][2];
p[5][0] = 5;
p[5][1] = 5;
for(int i =0; i<=5; i++)
{
for(int j =0; j<2; j++)
{
cout<<p[i][j];
}
}
}