读书人

一个指针数组的用法对吗?解决方案

发布时间: 2012-04-26 14:01:31 作者: rapoo

一个指针数组的用法,对吗??、

C/C++ code
int x=5;    int n=6;    int **box=new int*[x];    for(int i=0;i<x;i++)        box[i]=new int[n];    box[0][1]=1;    std::cout<<box[0][1];        for(int i=0; i<x; i++)        delete [](box[i]);   //主要是这里,对吗?????    delete []box;            return 0;



问题:之所以按照 delete [](box[i]),这样使用, 原因 ,box[0]是一个数组名

box[1]也是,box[2]。。。。以此类推。


既然是动态数组,那么就可以delete [](数组名).那么我的用法就正确了。。。。


同理:box是一个指针数组的数组名,那么也可以delete []box...


如果不对,请纠正我的用法。。。。非常感谢了额




问题2:


int value=3; 这一句算声明还是定义。。


int value2; //这一句呢????? 如果它只是算声明, 那么是不会分配内存的。。。。。只有定义的时候才会。

value2=3;




[解决办法]
可以,,没问题。

box[i]是一个指针,指向一个数组。

读书人网 >C++

热点推荐