Описание функций Си



         

Scanf



     scanf

Функция Выполняет форматированный ввод из потока stdin.

Синтаксис #include

int scanf(const char *format [,adress, ...]);

Файл, содержащий stdio.h прототип

Описание Функция scanf просматривают входные поля, символ за символом, считывая их из потока stdin. Затем каждое поле форматируется в соответствии со спе- цификацией формата, передаваемой scanf аргументом format. После этого она записывает отформатиро- ванный ввод по адресам, задаваемым аргументами, следующими за форматной строкой. Число специфика- ций формата должно соответствовать числу адресов.

Строка формата.

Строка формата, присутствующая в каждом вызове функций семейства ...scanf, управляет тем, каким образом каждая функция будет считывать, преобра- зовывать и записывать входные поля. Для заданных спецификаций формата должно быть достаточное ко- личество адресных аргументов; если это не соблю- дается, результат может быть непредсказуемым и, вероятно ошибочным. Лишние адресные аргументы (больше, чем требует формат) будут игнорированы.

Примечание. scanf часто приводит к непредсказуе- мым результаттам, когда вы отклоняетесь от точно- го шаблона. Вам необходимо помнить, что нужно указать scanf, каким образом синхронизировать ко- нец строки. В результате предпочтительнее на наш взгляд комбинация gets или fgets, за которыми следует sscanf.

Строка фомата - это символьная строка, содержащая три типа объектов: незначащие символы, значащие символы и спецификации формата.

Незначащие символы - это пусто ( ), знак табуля- ции (\t) и символ перехода на новую строку (\n). Как только функция семейства ...scanf встречает незначащий символ в строке формата, она считыва- ет, но не сохраняет все последующие незначащие символы до тех пор, пока не встретится первый значащий символ.

Значащие символы - это все символы ASCII, за иск- лючением знака процента (%). Если функция семейс- тва ...scanf встречает в форматной строке значаю- щий символ, она считывает, но не сохраняет данный символ.




Содержание  Назад  Вперед