46229

Ввод-вывод в терминал. Работа со строками. Работа с файлами

Доклад

Информатика, кибернетика и программирование

Обмен данными между программой и внешними устройствами осуществляется с помощью операций вводавывода. В языке Си нет особых операторов для ввода или вывода данных. Вместо этого имеется набор классов стандартно поставляемых вместе с компилятором которые и реализуют основные операции вводавывода. Библиотека классов для вводавывода решает две задачи.

Русский

2013-11-20

14.5 KB

2 чел.

1. Ввод-вывод в терминал. Работа со строками. Работа с файлами.

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

В языке Си++ нет особых операторов для ввода или вывода данных. Вместо этого имеется набор классов, стандартно поставляемых вместе с компилятором, которые и реализуют основные операции ввода-вывода.

Библиотека классов для ввода-вывода решает две задачи. Во-первых, она обеспечивает эффективный ввод-вывод всех встроенных типов и простое, но тем не менее гибкое, определение операций ввода-вывода для новых типов, разрабатываемых программистом. Во-вторых, сама библиотека позволяет при необходимости развивать её и модифицировать.

Механизм для ввода-вывода в Си++ называется потоком . Название произошло от того, что информация вводится и выводится в виде потока байтов – символ за символом.

Класс istream реализует поток ввода, класс ostream – поток вывода. Эти классы определены в файле заголовков iostream.h. 

ostream – это механизм преобразования значений различного типа в последовательность символов.

istream – класс, обеспечивающий оператор ввода >> для небольшого набора стандартных типов

Вывод осуществляется с помощью операции <<

Ввод с помощью операции >>.

Работа со строками

Манипуляторы

endl - при выводе перейти на новую строку;

ends - вывести нулевой байт (признак конца строки символов);

flush - немедленно вывести и опустошить все промежуточные буферы;

dec - выводить числа в десятичной системе (действует по умолчанию);

oct -  выводить числа в восьмеричной системе;

hex - выводить числа в шестнадцатиричной системе счисления;

Чтение всей строки целиком

Оператор >> читает за раз всего одно слово.

Для чтения строки необходимо использовать функцию getline:

istream& getline (istream& is, string& str);

Работа с файлами

Для работы с файлами существуют специальные потоки из библиотеки <fstream>:

ifstream - поток ввода, открывает файл для чтения

ofstream – поток вывода, открывает файл для записи

ifstream и ofstream предоставляют три специальные функции для работы с файлами:

close() - закрывает файл

open(const char* s,

ios_base::openmode n) - открывает файл

bool is_open() - определяет открыт ли файл

Режимы открытия файлов

app - всегда писать в конец файла

binary - ввод/вывод в двоичном режиме

in - открыть для ввода

out - открыть для вывода

trunc - уничтожить данные после открытия

существующего потока

ate - открыть позиционируя указатель на

конец файла


 

А также другие работы, которые могут Вас заинтересовать

62547. Открытие протона и нейтрона 960.86 KB
  Учитель записывает под диктовку на доску. Учитель вносит дополнения в список на доске. Учитель дополняет список на доске.
62549. Основные соединения серы 42.31 KB
  Многие характеристики серы помогут нам более детально разобраться в теме сегодняшнего урока. Этап целеполагания и планирования Учитель: Сегодня на уроке мы продолжим изучение серы и тема нашего урока Основные соединения серы...
62550. МОДЕЛИРОВАНИЕ ЮБКИ. РАЗРАБОТКА ИДЕЙ И ВЫБОР ЛУЧШЕЙ 1.88 MB
  Главное для нас не ошибиться в подборе фасона конической юбки ткани для ее изготовления и цветовой гамме. Такие юбки могут носить девушки и женщины разных возрастов так как они смотрятся очень модно и стильно кроме того для их пошива можно использовать...
62551. Подготовка к сочинению в жанре спортивного репортажа по картине С.А. Григорьева Вратарь 42.07 KB
  Цели урока: дать понятие о жанровых особенностях репортажа подготовив материал для написания сочинения по картине с описанием действий людей которых изобразил художник...
62552. Все в твоих руках! 25.03 KB
  Но для начала давайте ответим на вопрос что такое здоровье вообще ответы детей. Таким образом репродуктивное здоровье означает возможность удовлетворенной и безопасной сексуальной жизни способность к воспроизведению рождению детей и возможность решать когда и как часто это делать.
62554. Синонимы 22.43 KB
  Предметные задачи урока: расширить знания детей о синонимах учить правильно употреблять слова-синонимы в речи. Сегодня будем писать гласную которая есть в словах приятель товарищ но нет в слове друг...
62555. Урок развития речи. Письмо 30.47 KB
  Цель: Познакомить учащихся со структурой и стилистическими особенностями письма как эписталярного жанра со значением переписки в жизни людей. Мы научимся правильно писать письма родным близким и знакомым. Познакомимся со структурой письма продолжим развитие устной и письменной речи.