Попытка достичь двух отдельных целочисленных значений в текстовом файле [C] - PullRequest
0 голосов
/ 24 сентября 2019

В настоящее время я изучаю обработку файлов в C и пытаюсь прочитать два целых числа, разделенных строкой в ​​середине.До сих пор я был довольно озадачен тем, как это сделать, особенно в отношении fscanf и fgets, поскольку это единственные аспекты чтения файлов, которые я обнаружил при поиске в Google по поводу обработки файлов.Сам текстовый файл должен быть отформатирован следующим образом:

129475

Джон Доу

21

int x, i;
char str[60];
FILE *fp
fp = fopen("person.txt", "r");
fscanf(fp, "%i", &i);
fgets(str, STRING_LENGTH, fp);
fscanf(fp, "%i", &x);

Предполагаемые результаты должны бытьчто

i = 129475

y = "Джон Доу"

x = 21

Однако до сих пор мои результаты всегда заключались в том, что я становлюсьправильное значение с пробелом в начале.y становится символом газеты, а 21 становится серией случайных чисел перед выходом.Я чувствую себя по-настоящему глупо из-за этого, как будто я упускаю что-то очевидное, если бы кто-нибудь мог помочь, я был бы очень признателен за это

...