Вывод числа из текстового файла - C (СИ)
Формулировка задачи:
Записывается в файл все хорошо.
А считывание проходит не так, как хотелось бы
В файле число 1. А выводит 20530948. Объясните, пожалуйста, как правильно выводить
FILE *mf; mf=fopen ("file.txt","w"); fprintf(mf,"%s - ",name); fprintf(mf,"%d",score); fclose (mf);
FILE *mf; mf=fopen ("file.txt","r"); fscanf(mf, "%s", &name); fscanf(mf, "%d", &score); printf("%s - %d\n", &name,&score); fclose(mf);
Разобрался
Решение задачи: «Вывод числа из текстового файла»
textual
Листинг программы
fscanf(mf, " - %d", &score);
Объяснение кода листинга программы
- Входные данные: mf (предположительно, это файловый указатель, открытый для чтения из файла).
- Формат вывода, считываемый из файла:
- %d
(предположительно, это строка, содержащая формат считываемого числа). - Переменная score (предположительно, это переменная типа int, в которую будет сохранено считанное число).
- Выполняется функция fscanf, которая пытается считать из файла mf число, соответствующее формату
- %d
. - Результат считывания сохраняется в переменной score.
- Если считывание прошло успешно, код продолжает выполняться. Если произошла ошибка (например, конец файла или неверный формат), код должен обработать эту ошибку.