Язык Си шаг за шагом — страница 9

  • Просмотров 17659
  • Скачиваний 2168
  • Размер файла 405
    Кб

конца строки '\n' уничтожается при стандартном вводе-выводе (gets - не записывает в строку, а puts автоматически добавляет при выводе) и сохраняется в строке при вводе-выводе из явно указанного файла (fgets - записывает в строку, fputs - выводит имеющийся в строке (сам не добавляет)). 10. Функции форматированного ввода-вывода ┌──────────────────────────────

Форматированный вывод ──┐ │ int printf(char *format,...) │ │ - стандартный вывод │ │ int fprintf(FILE *fd, char *format,...) │ │ - явно указанный файл │ │ int sprintf(char *str, char *format,...) │ │ │ - строка в памяти │ │ └─── число выведенных байтов или EOF │

└───────────────────────────────────────────────────────┘ ┌────────────────────────────── Форматированный ввод ───┐ │ int scanf(char *format,...) │ │ - стандартный ввод │ │

int fscanf(FILE *fd, char *format,...) │ │ - явно указанный файл │ │ int sscanf(char *str, char *format,...) │ │ │ - строка в памяти │ │ └─── число фактических параметров, для которых │ │ введены значения, или EOF │

└───────────────────────────────────────────────────────┘ Форматная строка определяет количество и типы фактических параметров из переменного списка. Последовательность сим- волов, идущая за "%" (спецификация формата), определяет тип и формат ввода-вывода

очередного фактического параметра. При этом в функциях форматированного вывода все символы форматной строки выводятся в выходной файл за исключением спецификаций формата, которые заменяются значениями соответствующих фактических параметров. В функциях форма- тированного вывода тип параметра должен совпадать с задан- ным в спецификации, в функциях форматного ввода - быть указателем на этот тип (то есть должен передаваться