【发布时间】:2014-05-17 09:40:34
【问题描述】:
我正在尝试使用 fscanf 读取和打印屏幕上的每个字符,但是当我运行程序时出现分段错误(核心转储)。这是我的代码:
#include <stdio.h>
main(int argc, char * argv[]) {
int *a ;
FILE *input;
if (argc>=2) {
input= fopen(argv[1],"r");
if (input!=NULL) {
while (feof(input)==0) {
fscanf(input,"%d\n",a);
printf("%d\n",*a);
}
fclose(input);
} else {
printf("Error!\n");
}
}
}
我将文件作为参数提供,如下所示:
./myprog input.txt
文件input.txt 包含以下内容:
23
47
55
70
【问题讨论】:
标签: c segmentation-fault scanf argv coredump