Разделы презентаций


Библиотека ввода/вывода С++

6.1 Стандартные потокиiosstreambufistreamostreamiostreamifstreamofstreamfstreamСтандартные потоки:cin, cout, clog, cerr

Слайды и текст этой презентации

Слайд 1Глава 6. Библиотека ввода/вывода С++
МГТУ им. Н.Э. Баумана
Факультет Информатика и

системы управления
Кафедра Компьютерные системы и сети
Лектор: д.т.н., проф.

Иванова Галина Сергеевна
Глава 6.  Библиотека ввода/вывода С++МГТУ им. Н.Э. БауманаФакультет Информатика и системы управленияКафедра Компьютерные системы и сетиЛектор:

Слайд 26.1 Стандартные потоки
ios
streambuf
istream
ostream
iostream
ifstream
ofstream
fstream
Стандартные потоки:
cin, cout, clog, cerr

6.1 Стандартные потокиiosstreambufistreamostreamiostreamifstreamofstreamfstreamСтандартные потоки:cin, cout, clog, cerr

Слайд 3Библиотека ввода/вывода С++ (2)
Операции ввода/вывода делятся на две группы:
а) операции

с преобразованием из внутреннего формата в символьный – осуществляется переопределенными

“<<“ и “>>”;
б) операции без преобразования – осуществляется специальными функциями.
Библиотека ввода/вывода С++ (2)Операции ввода/вывода делятся на две группы:а) операции с преобразованием из внутреннего формата в символьный

Слайд 46.2 Операции «извлечение» и «вставка»
Операции переопределены для:
char, signed и unsigned

short, int, long, float, double, long double, char *(строка), void

*(адрес)

Примеры:

а) cout<<“Input integer:”;
б) cin>>a;
в) cout<<2+a+8;
г) сout<<“String:”<д) сout<<(a<<2);
е) cout<<(a=2);
6.2 Операции «извлечение» и «вставка»Операции переопределены для:char, signed и unsigned short, int, long, float, double, long double,

Слайд 56.3 Управление потоками ввода/вывода Форматирование ввода/вывода. Флаги
enum
{ skipws = 0x0001,//

пропустить пробелы при вводе
left = 0x0002,// выполнять по левой

гр. при выводе
rigth = 0x0004,// выполнять по правой гр. при выводе
interval=0x0008,// дополнить пробелами при выводе
dec = 0x0010,// преобразовать в десятичную с/с
oct = 0x0020,// преобразовать в восьмиричную с/с
hex = 0x0040,// преобразовать в шестнадцатир. с/с
showbase=0x0080,// показывать основание с/с при выводе
showpoint=0x0100,// показывать дес. точку при выводе
uppercase=0x0200,// вывод шестн. цифр в верхнем р-ре
showpos = 0x0400,// выводить + перед полож. числами
sientific=0x0800,// вывод в формате с плав. точкой
fixed = 0x1000,// вывод в формате с фикс. точкой
unitbuf = 0x2000,// стереть все потоки после вставки
stdio = 0x4000};//стереть после вставки stdin,stdout
6.3 Управление потоками ввода/вывода Форматирование ввода/вывода. Флагиenum { skipws = 0x0001,// пропустить пробелы при вводе	left  =

Слайд 6Флаги (2)
Флаги объявлены в классе ios:
class ios
{private:
long x_flags;

// флаги
int x_width; // ширина поля вывода
int

x_precision; // число цифр др. части
int x_fill; …} // символ-заполнитель

Для работы с этими полями используются специальные методы:

flags(), precision(), setf(), width()

Пример:
cout.setf(ios::uppercase);
cout.setf(ios::hex,ios::dec&oct&hex);
Флаги (2)Флаги объявлены в классе ios:class ios{private: long x_flags;  	// флаги int x_width;  	// ширина

Слайд 76.4 Манипуляторы
1) Манипуляторы без параметров (iostream.h):
ostream & (ostream &

Os)
dec – десятичная система счисления;
hex – шестнадцатеричная система счисления;
oct –

восьмеричная система счисления;
ws – удаление из входного потока пробелов и знаков табуляции;
endl – добавление маркера «конец строки» + вывод из буфера;
flush – вывод из буфера.

2) Манипуляторы с параметрами (iomanip.h):
setbase(int n) – установка системы счисления (0, 8, 10, 16);
setprecision(int n) – определяет количество дробных цифр;
setw(int n) – определяет минимальную ширину поля вывода.

Пример:
cout<
6.4 Манипуляторы1) Манипуляторы без параметров (iostream.h):ostream & (ostream & Os)dec – десятичная система счисления;hex – шестнадцатеричная система

Слайд 86.5 Переопределение извлечения и вставки для типов пользователя
Переопределяются как функции-операции

(т.е. вне класса) :

ostream & operator

return out;
}

istream & operator>>(istream &in,<Тип> &<Имя>)
{ ...
in>>...
return in;
}
6.5 Переопределение извлечения и вставки для типов пользователяПереопределяются как функции-операции (т.е. вне класса) :ostream & operator... return

Слайд 9Пример переопределения извлечения и вставки (Ex5_15)
#include "stdafx.h"
#include
#include


class TVector
{ private: int x,y,z;

public: TVector() {}
friend ostream& operator<<(ostream &stream,
TVector obj);
friend istream& operator>>(istream &stream,
TVector& obj);
};
Пример переопределения извлечения и  вставки (Ex5_15) #include

Слайд 10Пример переопределения извлечения и вставки
ostream& operator

"Value :";
stream

<< obj.z << "\n";
return stream;
}
istream& operator>>(istream &stream, TVector& obj)
{ cout<<"Input value:";
return stream >> obj.x >> obj.y >> obj.z;
}

Пример переопределения извлечения и вставкиostream& operator

Слайд 11Тестирующая программа
int main(int argc, char* argv[])
{ TVector A,B;
cin>>A>>B;

cout

Тестирующая программаint main(int argc, char* argv[]){ TVector A,B;  cin>>A>>B;  cout

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика