У меня есть текстовый файл, который содержит следующие три строки:
12 5 6 4 2 7 9
Я могу использовать функцию fscanf, чтобы прочитать первые 3 значения и сохранить их в 3 переменных. Но я не могу читать остальное. Я попытался использовать функцию fseek, но она работает только с двоичными файлами.
fscanf
fseek
Пожалуйста, помогите мне сохранить все значения в целочисленных переменных.
Простое решение с использованием fscanf:
void read_ints (const char* file_name) { FILE* file = fopen (file_name, "r"); int i = 0; fscanf (file, "%d", &i); while (!feof (file)) { printf ("%d ", i); fscanf (file, "%d", &i); } fclose (file); }
Как насчет этого?
fscanf(file,"%d %d %d %d %d %d %d",&line1_1,&line1_2, &line1_3, &line2_1, &line2_2, &line3_1, &line3_2);
В этом случае пробелы в fscanf соответствуют нескольким вхождениям любого пробела, пока не будет найден следующий токен.