Чтобы вписать данные с помощью функции fscanf в языке программирования C, вы должны использовать шаблон формата, который определяет тип данных, ожидаемых для чтения. Функция fscanf считывает данные из потока и преобразует их в соответствующий тип данных, который вы указываете в шаблоне формата.
Вот базовый синтаксис использования функции fscanf:
fscanf(поток, шаблон_формата, переменная);
где поток
- указатель на поток для чтения данных, шаблон_формата
- строка, определяющая шаблон для считывания данных, и переменная
- переменная, куда данные будут считаны.
Примеры использования функции fscanf:
1. Чтение целого числа:
#include <stdio.h> int main() { FILE *file = fopen("input.txt", "r"); int number; if (file) { fscanf(file, "%d", &number); } else { printf("Не удалось открыть файл.n"); } fclose(file); printf("Считанное число: %dn", number); return 0; }
В этом примере открывается файл "input.txt" для чтения. Затем fscanf используется для чтения целого числа из файла в переменную number
.
2. Чтение строки:
#include <stdio.h> int main() { FILE *file = fopen("input.txt", "r"); char str[100]; if (file) { fscanf(file, "%s", str); } else { printf("Не удалось открыть файл.n"); } fclose(file); printf("Считанная строка: %sn", str); return 0; }
Этот пример читает строку из файла "input.txt" в массив символов str
с использованием шаблона формата "%s".
3. Чтение нескольких значений из строки:
#include <stdio.h> int main() { char str[] = "John 25"; char name[20]; int age; sscanf(str, "%s %d", name, &age); printf("Имя: %snВозраст: %dn", name, age); return 0; }
В этом примере sscanf используется для чтения имени и возраста из строки str
в переменные name
и age
соответственно, с использованием шаблона формата "%s %d".
Функция fscanf может быть использована для считывания различных типов данных, таких как целые числа, числа с плавающей запятой, символы и строки, используя соответствующие шаблоны формата. Шаблоны формата включают %d
для чтения целых чисел, %f
для чтения чисел с плавающей запятой, %c
для чтения символов, и %s
для чтения строк. Вы также можете использовать модификаторы шаблона формата для указания размера полей, например %20s
для чтения строки длиной не более 20 символов.