社区
C语言
帖子详情
不知道怎么回事,请教。。。。。
lm09
2002-07-15 09:59:11
int *spM,**pM;
spM=new int[3*4];
if(spM==NULL)
return;
pM=new int*[3];
if(pM==NULL)
{
delete []spM;
return;
}
pM[2][2]=4;
delete []spM;
delete []pM;
上面这段代码有问题吗?请解释一下
...全文
45
11
打赏
收藏
不知道怎么回事,请教。。。。。
int *spM,**pM; spM=new int[3*4]; if(spM==NULL) return; pM=new int*[3]; if(pM==NULL) { delete []spM; return; } pM[2][2]=4; delete []spM; delete []pM; 上面这段代码有问题吗?请解释一下
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
熊主任
2002-07-15
打赏
举报
回复
再补充一点,刚才没确认,问过公司里的专家后确认了。楼主在删除这个二维指针的时候也有问题,造成了内存泄漏。
对于int **p;......不能用delete[] p来删除,正确步骤如下:
for (i = 0; i < N; i++) //N取决与p = new int* [?]的大小
delete[] p[i];
delete[] p;
只有这样,才能不会造成内存泄漏。
hellwolf
2002-07-15
打赏
举报
回复
同意panda_lin(熊猫)
要初始化
bean820
2002-07-15
打赏
举报
回复
spM=new int[3*4];
这里的3*4是什么意思,是不是分配的空间的大小呢?
熊主任
2002-07-15
打赏
举报
回复
pm = new int *[3]就等于告诉系统我pm[i]都是指向int类型的指针了,然后
pm[i] = new int[??]就是给他分配空间了。赋值是给PM[i][j]的,关地址什么事?
熊主任
2002-07-15
打赏
举报
回复
楼上的,PM[]他已经那个初始化了啊,看到这句没:PM = new int* [3]
cxjddd
2002-07-15
打赏
举报
回复
pM是一个二级指针啊,用[][]是不是不行啊?
pM[]是什么呢?是一个一级指针。那么,pM[][]就是一个int了。好象可以啊。
不过,如panda_lin,你应该给pM[]赋值。
sunx007
2002-07-15
打赏
举报
回复
当然有问题了,你的pM = new int*[3];这是什么操作,是二维数组吧,如果你要这样定义二维数组,你应该把pM声明为int *pM;
qhgary
2002-07-15
打赏
举报
回复
pM[2][2]=4有问题,你使用了没有申请的空间。要知道pM=new int*[3]只是申请了3个保存指针的空间,你要pM[0]=new int;pM[1]=new int;pM[2]=new int一下,明白了吧。记得给分哦:)
qhgary
2002-07-15
打赏
举报
回复
有问题,pM[2][2]=4有问题,你并没有申请空间就使用了不该使用的内存。
因为pM=new int*[3]只是开了3个保存指针的空间,如果你要象二维数组一样使用必须还要分别pM[0]=new int;pM[1]=new int;pM[2]=new int;记得给分哦:)
dingkl
2002-07-15
打赏
举报
回复
pM[2][2]没有分配;
即pM[2]没有初始化;应pM[2] = new int [n];然后才能使用
熊主任
2002-07-15
打赏
举报
回复
我差不多猜到你的意思了。你用pm = new int *[3]是想分配一个二维数组,但是少了一部,应该再加两句:
for (int i = 0; i < 3; i++)
{
pm[i] = new int[??]; //??表示你要多少有多少。
}
还有不明白的地方看看谭老师的C语言教程,里面也有具体例子的。
向别人
请教
问题,不要这样开头
前言 我们经常会有
请教
别人问题的时候,而下面这...毋庸置疑,你提问的目的自然是想得到解答,而上面三种提问方式都有一个共性,就是在看到上面的问题之后,仍然不
知道
具体问题是什么,而要简单
回
复之后才能得到真...
英文邮件礼仪:向教授
请教
学术问题
英文邮件礼仪:向教授
请教
学术问题 邮件主题 邮件主题(subject)不需要写自己的名字。名字是在邮件系统设置里设定好的,在发件时会替换显示实际地址,所以无需在主题里再写一遍。 [关键内容是要在主题里就写...
学会和人沟通与
请教
问题秘籍
2.1.2 学会沟通与
请教
问题 在当今的社会,无论在任何一个行业,以及做任何
事
情,首先需要学会的就是有效地沟通与...老男孩周边的大多数运维朋友,都不善于沟通也不乐于沟通,更不
知道
如何沟通。 其实,在企业里...
用友服务器上的模块显示不全,2019-10-31 “用友U8”软件提示“不
知道
这样的主机”的问题和解决方法...
今天上午财务室的同
事
说 用友U8 登录不上,一直提示“不
知道
这样的主机”问题再现:错误提示“不
知道
这样的主机”一开始对这个不清楚,只是大概
知道
可能跟她使用杀毒软件清理垃圾的时候,给把一些缓存或设置给干掉了...
聊聊
请教
技术问题的正确方式
但当发消息
请教
时却如石沉大海,毫无
回
音。难道技术大牛都那么高冷么? 当你备注了添加好友的原因,如果对方通过了,其实已经表明愿意就此内容与你沟通交流。但为什么当你发消息时却得不到
回
应?这不排除对方很忙,...
C语言
69,382
社区成员
243,073
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章