Программирование >>  Инициализация объектов класса, структура 

1 ... 6 7 8 [ 9 ] 10 11 12 ... 395


int v1, v2; ...

cout << сумма v1 и v2 = ;

cout << v1 + v2;

cout << \n ;

Последовательность \n представляет собой символ перехода на новую строку. Вместо \n м1 можем использовать предопределенный манипулятор endl.

cout << endl;

Манипулятор endl не просто выводит данные (символ перехода на новую строку), но и производит сброс буфера вывода. (Предопределенные манипуляторы рассматриваются в главе 20.)

Операторы вывода можно сцеплять. Так, три строки в предыдущем примере заменяются одной:

cout << сумма v1 и v2 = << v1 + v2 << \n ;

string file name;

...

cout << Введите имя файла: ;

Для чтения значения из стандартного ввода применяется оператор ввода (>>):

cin >> file name;

string ifile, ofile;

Операторы ввода, как и операторы вывода, можно сцеплять: ...

cout << Введите имя входного и водного файлов: ; cin >> ifile >> ofile;

Каким образом ввести заранее неизвестное число значений? М1 вернемся к этому

string word;

вопросу в конце раздела 2.2, а пока скажем, что последовательность инструкций

while ( cin >> word )

...

считывает по одному слову из стандартного ввода до тех пор, пока не считаны все слова. Выражение

( cin >> word )



#include <iostream> #include <string>

int main () {

string word;

while ( cin >> word )

cout << Прочитано слово: << word << \n ;

cout << Все слова прочитан!! ;

выводящей их в cout:

Вот первое предложение из произведения Джеймса Джойса Пробуждение Финнегана :

I riverrun, past Eve and Adams ~

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

Прочитано слово: riverrun,

Прочитано слово: past

Прочитано слово: Eve,

Прочитано слово: and

Прочитано слово: Adams

Все слова прочитаны!

(В главе 6 м1 рассмотрим вопрос о том, как убрать знаки препинания из вводим1х слов.)

1.5.1. Файловый ввод/вывод

Библиотека iostream поддерживает и файловый ввод/вывод. Все операции, нрименим1е в стандартному вводу и выводу, могут быть также применены к файлам. Чтобы использовать файл для ввода или вывода, мы должны включить еще один заголовочный файл:

#include <fstream>

Перед тем как открыть файл для вывода, необходимо объявить объект типа ofstream:

ofstream outfile( name-of-file ); Проверить, удалось ли нам открыть файл, можно следующим образом:

возвращает false, когда достигнут конец файла. (Подробнее об этом - в главе 20.) Вот пример простой законченной программы, считывающей по одному слову из cin и



if ( ! outfile ) false, ес файл не открыт cerr << Сшибка открытия файла.\n

ifstream infile( name-of-file );

Так же открывается файл и для ввода, только он имеет тип ifstream:

if ( ! infile ) false, если файл не открыт ибка открытия файла.\n

Ниже приводится текст простой программ:, которая читает файл с именем in file и выводит все прочитанные из этого файла слова, разделяя их пробелом, в другой файл,

#include <iostream> #include <fstream> #include <string>

int main()

ifstream infile( in file );

ofstream outfile( out file );

if ( ! infile ) {

cerr << Сшибка открытия входного файла.\n return -1;

if ( ! outfile ) {

cerr << ибка открытия в1ходного файла.\n return -2;

названный out file.

string word;

while ( infile >> word ) outfile << word << ;

return 0;

В главе 20 библиотека ввода/вывода будет рассмотрена подробно. А в следующих разделах мы увидим, как можно создавать новые типы данных, используя механизм классов и шаблонов.



1 ... 6 7 8 [ 9 ] 10 11 12 ... 395

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика