请问C++中怎样随着程序的执行给二维数组增加行(或列)?

比如程序运行结果可以用一个二维数组来存储,但在程序运行前并不知道这个结果二维数组会有多少行(或列),而是需要需要随着程序的执行动态的给数组增加行(或列)来存储运行结果,该... 比如程序运行结果可以用一个二维数组来存储,但在程序运行前并不知道这个结果二维数组会有多少行(或列),而是需要需要随着程序的执行动态的给数组增加行(或列)来存储运行结果,该怎么办? 展开
 我来答
bingyang521
2006-10-16
知道答主
回答量:20
采纳率:0%
帮助的人:0
展开全部
申请一个二维指针,比如int **a;
如果运行过程中动态计算出二维数组应该是m行n列,那么用如下语句申请空间:
a = new int*[m];
if (a == NULL) ... //内存不足,申请失败。
for (int i = 0; i < m; i++)
{
a[i] = new int[n];
if (a[i] == NULL) ... //内存不足,申请失败。
}

注意最后用完后,需要用如下代码释放内存:
for (int i = 0; i < m; i++)
{
delete [] a[i];
}
delete [] a;

内存释放后,上述二维数组不能再被使用。
百度网友8bd8f8b17
2006-10-15 · TA获得超过1326个赞
知道小有建树答主
回答量:1582
采纳率:100%
帮助的人:0
展开全部
自己写一个二纬动态数组
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1b344793b
2006-10-15 · TA获得超过521个赞
知道小有建树答主
回答量:314
采纳率:50%
帮助的人:0
展开全部
声明一个指针类型的数组头,然后在运行过程中根据需要动态开辟空间。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式