Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовые / Язык программирования Сpp 25.09.11.doc
Скачиваний:
113
Добавлен:
10.05.2015
Размер:
10.13 Mб
Скачать
    1. Дополнительные возможности cin и cout

На всем протяжении этой книги вы использовали выходной поток coutдля вывода информации на экран дисплея. Аналогично, многие из ваших программ использовали входной поток cin для чтения информации с клавиатуры. Оказывается, cin и cout представляют собой классовые объекты, определяемые и создаваемые с помощью заголовочного файлаiostream.h. Как объекты cin и cout поддерживают различные операторы и операции. Из данного урока вы узнаете, как расширить возможности ввода и вывода, используя функции, встроенные в классы cin и cout. К концу этого урока вы освоите следующие основные концепции:

  • Заголовочный файл iostream.h содержит определения классов, которые вы можете проанализировать, чтобы лучше понять потоковый ввод/вывод.

  • Используя метод cout.width, ваши программы могут управлять шириной вывода.

  • Используя метод cout.fill, ваши программы могут заменить пустые выходные символы (табуляцию и пробелы) некоторым определенным символом.

  • Для управления количеством цифр, выводимых выходным потокомcout для значений с плавающей точкой, ваши программы могут использовать метод cout.setprecision.

  • Для вывода и ввода по одному символу за один раз ваши программы могут использовать потоковые методы cout.put и cin.get.

  • Используя метод cin.getline, ваши программы могут вводить целую строку за один раз.

Почти любая создаваемая вами на C++ программа будет использовать cout или cin для выполнения операций В/В (ввода/вывода). Выберите время для экспериментов с программами из этого урока.

    1. Что внутри iostream.H

Начиная с урока 1, каждая написанная вами на C++ программа включала заголовочный файл iostream.h. Этот файл содержит определения, позволяющие вашим программам использовать cout для выполнения вывода и cin для выполнения ввода. Более точно, этот файл определяет классы istream и ostream (входной поток и выходной поток), a cin и соut являются переменными (объектами) этих классов. Выберите время, чтобы напечатать файл iostream.h. Он находится в подкаталоге INCLUDE. Определения в этом файле достаточно сложны. Однако если вы пройдете по файлу медленно, то обнаружите, что большинство определений являются просто определениями классов и констант. Внутри файла вы найдете объявления переменных cin и cout.

    1. Использование cout

Как вы уже знаете, cout представляет собой класс, который содержит несколько разных методов. Следующие программы иллюстрируют использование некоторых методов, которые ваши программы могут применять для форматирования вывода. Из урока 3 вы узнали, что манипулятор setw позволяет вашим программам указать минимальное количество символов, которое может занять следующее выходное значение:

#include <iostream.h>

#include <iomanip.h>

void main(void)

{ cout << "Мое любимое число" << setw(3) << 1001 << endl; cout << "Мое любимое число" << setw (4) << 1001 << endl; cout << "Мое любимое число" << setw (5) << 1001 << endl; cout << "Мое любимое число" << setw(6) << 1001 << endl; }

Подобным образом метод cout.width позволяет вам указать минимальное количество символов, которое будет использовать сои/для вывода следующего значения. Следующая программа COUTWIDT.CPP использует функцию cout.width для выполнения работы, аналогичной той, которую выполняет setw, что и показано ниже:

#include <iostream.h>

#include <iomanip.h>

void main (void)

{ int i; for (i = 3; i < 7; i++)

{ cout << "Мое любимое число"; cout. width (i); cout << 1001 << endl; } }

Если вы откомпилируете и запустите вашу программу, на экране дисплеяпоявится следующий вывод:

С:\> COUTWIDT <ENTER>

Мое любимое число1001

Мое любимое число 1001

Мое любимое число 1001

Мое любимое число 1001

Подобно манипулятору setw, ширина, выбираемая с помощью функцииcout.width, действует только для следующего выходного значения.