Смекни!
smekni.com

Объектно-ориентированное программирование на Borland C++ (стр. 8 из 8)

scanf ( "%d %d %f", &x1, &x2, &y );

Здесь x1 и x2 должны быть типа int, а y - типа float. Во входном потоке вводимые значения должны разделяться хотя бы одним пробелом.

Более полную информацию о функциях ввода-вывода в стиле Си можно получить в справочной системе интегрированной среды Borland C++.

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

cin - для ввода данных,

cout - для вывода данных,

cerr - вывод сообщений об ошибках без буферизации вывода,

clog - вывод сообщений об ошибках с буферизацией вывода.

В качестве знака операции вывода определены знаки <<, а знаком операции ввода - знаки >>, те же, что и для операций сдвига. Компилятор по контексту определяет, какую операцию задают эти символы, ввод-вывод или сдвиг.

Чтобы использовать средства ввода-вывода Си++ в программу должен быть включен файл-заголовок iostream.h :

# include <iostream.h>

В операциях вывода левым операндом должен быть поток вывода, правым операндом - выводимое данное. Результатом операции вывода является поток вывода, что позволяет записывать вывод в виде цепочки операций <<, например,

cout << "x1 = " << x1 << " x2 = " << x2 << "&bsol;n";

Для базовых типов данных определены их преобразования при выводе и точность представления на устройстве вывода. Эти характеристики можно менять, применяя специальные функции, называемые манипуляторами.

В операции ввода левым операндом должен быть поток ввода, а правым операндом - имя вводимого данного для арифметических данных или указатель типа char* для ввода строк, например,

cin >> x1 >> x2 >>st;

Операции ввода-вывода выполняются слева направо и последний оператор эквивалентен оператору ((cin>> x1) >> x2) >> st; или трем операторам

cin >> x1; cin >> x2; cin >> st;

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

# include <iostream.h> int x, y ; int main ( ){cout << "x = "; cin >> x; // Запрос и ввод значения xcout << "&bsol;n y = "; cin >> y; // Запрос и ввод значения ycout << "&bsol;n" << " x + y = " << x + y;return 0;}.