Когда вы пишете:
int *a;
, тогда a
является указателем , но в настоящее время он не указывает нигде.
Перед отправкой на fscanf
вы должны указать правильное хранилище для int
.
Например, внутри main()
:
int b;
a = &b;
fscanf(input,"%d\n",a);
Кроме того, ваш цикл неверен. Почти всегда ошибка использования feof
(не говоря уже о качестве условия цикла). Вместо этого вы должны проверить фактическую операцию чтения. В вашем случае:
while ( 1 == fscanf(input,"%d\n",a) )
{
printf("%d\n", a);
}