Я пытаюсь написать программу, которая загружает числа в текстовый файл в массив. Текстовый файл называется «номерами», а числа находятся в следующем формате: 3,49,52,40,34 и т. Д.Загрузка чисел в текстовый файл с использованием C
Когда я пытаюсь запустить программу, я получаю сообщение «не отвечает на ошибку» ». Может ли кто-нибудь указать, что я делаю неправильно? Большое спасибо.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX 32
int main (void) {
FILE* fp;
fp = fopen ("numbers.txt", "r");
if (fp == NULL)
puts ("No data in file");
return 0;
int n = 0;
int i = 0;
int j = 0;
int a[MAX];
while (fscanf(fp, "%d, ", &n) > 0) {
a[i++] = n;
}
fclose (fp);
printf ("Data loaded");
for (j = 0; j < MAX; j++) {
printf ("%d", a[j++]);
printf ("THE END");
}
return 0;
}
Вы забыли кронштейн в 'состоянии if', которое вызывает программу, чтобы вернуться, не закрывая дескриптор файла. – sgarizvi
Отсутствует {} после вашего 'if (fp == NULL)' означает, что вы всегда будете выполнять возврат 0. –
большое вам спасибо! Я не могу поверить, что я пропустил это – user1816546