正文

二维数组动态分配内存2008-08-06 21:28:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/bclz/37399.html

分享到:

如果使用以下方式分配,将无法通过编译double * x;x=new double[10][10];原因是new没有分配多维数组的能力。可以直接new double[100]分配一个一维数组来代替两维的,用的时候做一下下标转换即可。或者也可以分配一个指针数组,再为每一个指针分配一个数组来实现两维的堆内存分配。也可以用如下形式:A=new int*[10];for(int i=0;i<10;i++)A[i]=new int[10];注意:二维数组的头指针是一个指针的指针,也就是double**,int**...所以必须分配两次.所以例子中A的类型应声明为int**.

阅读(2504) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册