读书人

gdb调试执行没有异常 正常运行有异常

发布时间: 2013-11-08 17:52:14 作者: rapoo

gdb调试执行没有错误 正常运行有错误
#include <stdlib.h>
#include <stdio.h>

int intcomp(void *a,void *b)
{
return *(int*)a - *(int*)b;
}

int num[1000000];

int main(int argc,char* argv[])
{
FILE *file = fopen("rand_num_file.txt", "a+");
FILE *result_file = fopen("result.txt","a+");
int i;
int n=0;

while(fscanf(file,"%d",&num[n]) != EOF)
n++;

qsort(num,1000000,sizeof(num[0]),(__compar_fn_t)intcomp);

for(i=0;i<1000000;i++)
fprintf(result_file,"%d\n",num[i]);

//fclose(file);
//fclose(result_file);
return 0;
}

[解决办法]
可能越越界了


//while(fscanf(file,"%d",&num[n]) != EOF)
while(n < 100000 && fscanf(file,"%d",&num[n]) == 1)
n++;

读书人网 >C语言

热点推荐