
明确一下数组的概念比如:arr[2][3][4]
A 01B 012012
C 012301230123012301230123
你程序里ptr1相当于上面图中C的位置,没问题。
你程序里ptr2相当于上面图中B的位置,需要ij个
你程序里ptr3相当于上面图中A的位置,需要i个
具体的代码,你自己再改改吧
ptr = new int; //在堆中开辟一块int大小的内存空间,并令指针ptr指向它
堆中的内存空间在整个程序运行期间一直可用,直到用delete释放它。
ptr = &len; //令ptr指向形参len的地址
这是典型的错误,因为形参属于函数中的局部变量,它的生命周期仅限于函数内。当函数结束后它的栈空间就被回收了,而此时ptr指针仍然持有该位置的引用,这是非常危险的,如果之后程序通过ptr指针修改该位置的内容,轻则导致数据错误,重则导致程序崩溃。
以上就是关于c语言 利用指针输出三维数组 问题全部的内容,包括:c语言 利用指针输出三维数组 问题、请教大神 ptr = new int;为什么要为指针分配内存、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)