首页 新闻 会员 周边

C++指针 请问这个程序错在哪里了,求大侠解答

0
悬赏园豆:20 [已解决问题] 解决于 2012-02-28 16:06
#include "iostream.h"
int main()
{
int *iptr=NULL;
int size;
cin >>size;//输入的size是一个不太大的正整数
iptr=new int [size];
for (int i=0;i<size;i++)
{
cin >>(*iptr++);
}
delete iptr;
return 0;
}

请问这个程序错在哪里了,求大侠解答

keiling的主页 keiling | 初学一级 | 园豆:15
提问于:2012-01-09 00:11
< >
分享
最佳答案
0

在循环中iptr变掉了,所以后面delete的指针错误

int main()
{
int *iptr=NULL;
int size;
cin >>size;//输入的size是一个不太大的正整数
iptr=new int [size];
int * p =iptr;
for (int i=0;i<size;i++)
{
cin >>(*p++);
}
delete[] iptr;
return 0;
}
收获园豆:20
Greatest | 小虾三级 |园豆:678 | 2012-01-09 11:07
其他回答(4)
0

delete[] iptr;

Launcher | 园豆:45045 (高人七级) | 2012-01-09 09:02
0

2楼正解。

胡健 | 园豆:215 (菜鸟二级) | 2012-02-24 19:55
0

学习了,二楼的正解

何处是归途 | 园豆:205 (菜鸟二级) | 2012-02-28 16:03
0

内存泄露

Rollen Holt | 园豆:210 (菜鸟二级) | 2012-03-21 16:15
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册