|

楼主 |
发表于 2005-1-20 20:26:54
|
显示全部楼层
Post by gotop2004
i<15,对于程序用的堆栈来说话肯定是太小了!
所以,如果你真的想看看程序报段错误,有两个办法!
第一个是加大 i 的值(这个只有靠试验了,慢慢加大,看在什么时候程序会报错)
第二个是这样改程序!
void test_ary(int ary[]){
int i;
for(i=0; i<16 ; ++i){ //请注意这里的 i 在我的机器上是等于15时,刚好报错
ary=i; //不知道在你的机器是什么样的,你可以增大或减小它! 
//我的机器是rh9,不过应该是一样的
printf("The num is %d\n",ary); //这个循环有15次,而数组只是10个元素的,
//居然不出现段错误?迷惑中啊!
//我用的是FC2!
}
}
void call_fun(void)
{
int intary[10];
test_ary(intary);
}
int main(){
call_func();
exit(EXIT_SUCCESS);
}
哦,明白了,谢谢啦!  |
|