|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 zzmaster 于 2013-8-23 19:13 编辑
今天兴致来了,写了一个程序判断输入数据的大小的程序,判断大小有多种方法,在测试的时候发现一个目前知识理解不了的问题,用的是VC 6.0。下面是程序代码:
- #include <iostream>
- using namespace std;
- int max(int [],int);
- int main()
- {
- cout<<"请输入数组成员个数:";
- int n;
- cin>>n;
- int *num=new int[n];
- for (int i=0;i<n;i++)
- {
- cout<<"输入成员:";
- cin>>num[i];
- }
- cout<<endl;
- cout<<"最大数为:"<<max(num,n)<<endl;
- delete [] num; //问题就在这里,如果我用下面注释的其中一种方法判断大小的话,程序结尾会报错,但问题在哪里我就不太清楚了!
- return 0;
- }
- int max(int a[],int size)
- {
- int temp=0;
- for (int i=0;i<size;i++)
- {
- if (a[i]>temp)
- {
- temp=a[i];
- }
- // if (a[i]>a[i+1])
- // {
- // temp=a[i];
- // a[i]=a[i+1];
- // a[i+1]=temp;
- // }
- // if (a[i]>a[i+1])
- // {
- // a[i+1]=a[i];
- // }
- }
- return temp;
- }
复制代码 为什么我上面在换其他方式的时候(返回值也做相应的调整)后,执行到到删除指针那步会报错了?
谁能帮我解答下,谢谢了!
|
|