Функция cscanf

Функция

int cscanf(char *format[, address,...]);

упрощенно

cscanf(УправляющаяСтрока, arg1, arg2,...)

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

Управляющая строка функций ввода

Управляющая строка может содержать:

  • пробелы, табуляции или символы новой строки ("символы пустых промежутков"), которые игнорируются.
  • Обычные символы (не %), которые предполагаются совпадающими со следующими отличными от символов пустых промежутков символами входного потока.
  • Спецификации преобразования, состоящие из символа %, необязательного символа подавления присваивания *, необязательного числа, задающего максимальную ширину поля и символа преобразования.

Спецификация преобразования управляет преобразованием следующего поля ввода. Нормально результат помещается в переменную, которая указывается соответствующим аргументом. Если, однако, с помощью символа * указано подавление присваивания, то это поле ввода просто пропускается и никакого присваивания не производится. Поле ввода определяется как строка символов, которые отличны от символов простых промежутков; оно продолжается либо до следующего символа пустого промежутка, либо пока не будет исчерпана ширина поля, если она указана. Отсюда следует, что при поиске нужного ей ввода, функция scanf будет пересекать границы строк, поскольку символ новой строки входит в число пустых промежутков.

Символ преобразования определяет интерпретацию поля ввода; согласно требованиям основанной на вызове по значению семантики языка С++ соответствующий аргумент должен быть указателем. Допускаются следующие символы преобразования.

Модификатор

  • (l) Модификатор длины l, который указывает, что соответствующий элемент данных имеет тип long, а не int.
  • (h) Модификатор длины h, который указывает, что соответствующий элемент данных имеет тип short, а не int.
  • (F) Аргумент рассматривается как far–указатель.
  • (N) Аргумент рассматривается как near–указатель.

Символы преобразования и их смысл


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: