申请二维数组:
int size1 = 0;
int size2 = 0;
std::cout << "输入行数";
std::cin >> size1;
int** p2 = new int*[size1];
memset(p2, 0, size1*sizeof(int*));
std::cout << "输入列数";
std::cin >> size2;
for (int i = 0; i < size1; i++)
{
p2[i] = new int[size2];
memset(p2[i], 0, size2*sizeof(int));
}
另外的问题
1. 指向指针的指针,直接char** p;就声明完了
2. 指针数组的申请:p = new char*[a];这样就申请完了
这里没有错误,后面就应该正确了,但我不知道这样输入p[0]会有什么用。给一个指针输入地址有意义么?用户如何知道内存地址?
把数组放到容器里面,然后利用迭代器输出就可以了吧。二维数组和一维数组的存储方式是一样的