注册 登录
编程论坛 C++教室

出现0x77047094 处有未经处理的异常: 0xC0000005: Access violation 求指导

wangca 发布于 2013-03-12 16:31, 1371 次点击
#include<iostream>
using namespace std;
int main()
{void move(int *,int, int);
int number[20],n,m,i;
cout<<"how many numbers ?";
cin>>n;
cout<<"input "<<n<<"numbers:"<<endl;
for(i=0;i<n;i++)
    cin>>number[i];
cout<<"how many places do you want move ?";
cin>>m;
move(number,n,m);
cout<<"Now,they are:"<<endl;
for(i=0;i<n;i++)
    cout<<number[i]<<" ";
cout<<endl;
return 0;
}
void move(int *arry,int n,int m)
{
    int *p,array_end;
    for (p=arry+n-1;p>arry;p++)
        *p=*(p-1);
    *arry=array_end;
    m--;
    if(m>0) move(arry,n,m);
}
编译成功,但是调试的时候出现0x77047094 处有未经处理的异常: 0xC0000005: Access violation
是什么原因?
4 回复
#2
yuccn2013-03-12 16:37
非法内存访问,调试下就可以找出来了
#3
wangca2013-03-12 17:51
回复 2楼 yuccn
调试了,还是没找出来,求教
#4
azzbcc2013-03-12 17:57
move函数是干嘛的?

你真的调试了么,move函数里面有死循环的说
#5
wangca2013-03-12 19:00
回复 4楼 azzbcc
谢谢提醒,知道怎么改了
1