форматированный ввод по умолч
Автор admin
Вторник, 12 мая 2009 11:32
форматированный ввод по умолчанию разделяется пропусками. Посмотрим, что произойдет, если собрать приведенные выше фрагменты в программу: //: С04:Iosexamp.cpp // Пример работы с потоками ввода-вывода Потоки ввода-вывода 135 #include using namespace std: int mainO { int i; cin » i: float f: cin » f: char c; cin » c: char buf[100]; cin » buf; cout « “i = ” cout « “f = ” cout « “c = ” cout « “buf = « i « endl; « f « endl: « с « endl; ” « buf « endl: cout « flush; cout « hex « “Ox” « i « endl: } ///:- Попробуем передать этой программе такой набор входных данных: 12 1.4 с this is a test Казалось бы, данные должны распределиться следующим образом: 12 1.4 с this is a test Однако тест дает несколько неожиданный результат: i = 12 f = 1.4 с = с buf = this Oxc Переменной buf достается только первое слово, потому что функция ввода считает пробел после «this» признаком конца ввода. Кроме того, если непрерывная входная строка превысит объем блока памяти, выделенного для buf, произойдет переполнение буфера. На практике обычно бывает проще получить от интерактивной программы строку в виде последовательнос
Комментарии закрыты.
Последние комментарии