这曾经奏效。我不知道我做了什么让它停止工作,但是当我输入一个不存在的文件名时,我得到一个段冲突错误并且程序退出。
int main()
{
File *fr;
char input_file[32];
int num_lines, valid;
do{
printf("\nEnter the name of the input file: ");
scanf("%s", input_file);
fr = fopen(input_file, "r");
if(fr == NULL){
valid = 0;
printf("File does not exist...");
}
if(fr != NULL){
fscanf(fr, "%d", &num_lines);
numbers = malloc(sizeof(int) * num_lines);
for(i=0;i<num_lines;i++){
fscanf(fr, "%[^0123456789]%d", numbers+i);
printf("%d\n", numbers[i]);
valid =1;
}
free(numbers);
fclose(fr);
}
}while(valid == 0);
}
/已编辑/