Форум программистов  
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > C++ > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 15.02.2009, 14:05   #1
MaTBeu
Eclipse Foundation
Профессионал
 
Аватар для MaTBeu
 
Регистрация: 19.09.2007
Адрес: Стокгольм
Сообщений: 2,624
Репутация: 1148
Восклицание <fstream> <iomanip> <ios> <iostream>. Краткое описание ввода/вывода

//---------------------------------------------------------------------------------
<fstream>
В этом файле определены классы для потокового ввода/вывода при работе с файлами.
Наиболее часто использующиеся типы:
------------------Для работы с ANSI-строками (char)---------------------
-fstream - обощенный поток ввода/вывода в файл
-ofstream - поток записи в файл
-ifstream - поток чтения из файла
------------------Для работы с UNICODE-строками (wchar_t)---------------
-wfstream - обощенный поток ввода/вывода в файл
-wofstream - поток записи в файл
-wifstream - поток чтения из файла
---------------------------Пример кода----------------------------------
Код:

#include <iostream>
#include <fstream>

int main()
{
	std::ofstream out;
	out.open( "File.txt", std::ios_base::out | std::ios_base::trunc );
	for(int i=0; i<=20; i++)
	{
		out<<i;
	}
	out.close();
	return 0;
}

//---------------------------------------------------------------------------------
<iomanip>
В этом файле определены некоторые манипуляторы потокового ввода/вывода.
Список самых популярных манипуляторов:
-----------------------------------------------------------------------------------
-std::setprecision - задает количество знаков после запятой в при выводе чисел с плавающей точкой
-std::setw(setwidth) - задает ширину поля вывода (как и std::setprecision - только работает не только с числами)
-std::setfill - задает символ, которым будут заполнятся пробелы в выводимом тексте
-std::setbase - задает систему счисления в которой будет выводиться число
---------------------------Пример кода----------------------------------
Код:

#include <iostream>
#include <iomanip>

int main()
{
	float flDigit = 1.0;
	int digit = 15;
	char *str = "This is manipulator\n";
	std::cout<<"Floating point "<<std::fixed<<std::setprecision(4)<<flDigit<<std::endl;
	std::cout<<std::setfill('#')<<str<<std::endl;
	std::cout<<std::setbase(8)<<digit<<std::endl
	         <<std::setbase(10)<<digit<<std::endl
                 <<std::setbase(16)<<digit<<std::endl;
	return 0;
}

//---------------------------------------------------------------------------------
<ios>
В этом файле определены манипуляторы потокового ввода/вывода. Этот файл подключается внутри остальных(например <iomanip>), нет необходимости подключать его вручную.
Список манипуляторов:
----------------------------------------------------------------------------
-std:: oct - аналогично std::setbase(8) - вывод в восьмеричной системе счисления
-std:: dec - аналогично std::setbase(10) - вывод в десятеричной системе счисления
-std::hex - аналогично std::setbase(16) - вывод в шеснадцатеричной системе счисления
-std::left - выравнивание выводимого текста по левому краю
-std::right - выравнивание выводимого текста по правому краю
-std::fixed - выводит число с плавающей точкой, как число с фиксированной точкой
---------------------------Пример кода----------------------------------
Код:

#include <iostream>	//подключает <ios>

int main()
{
	int digit = 15;
	float fl = 12.03;
	std::cout<<std::oct<<digit<<std::endl
		 <<std::dec<<digit<<std::endl
	         <<std::hex<<digit<<std::endl;
        std::cout<<std::right<<std::fixed<<fl<<std::endl;
	return 0;
}

//---------------------------------------------------------------------------------
<iostream>
В этом файле определены классы для потокового ввода/вывода.
Наиболее часто использующиеся типы:
------------------Для работы с ANSI-строками (char)---------------------
-cin - объект стандартного потока ввода (класс basic_istream)
-cout - объект стандартного потока вывода (класс basic_ostream)
-cerr - объект стандартного потока ошибок (класс basic_ostream)
-clog - объект стандартного потока ошибок (класс basic_ostream)
------------------Для работы с UNICODE-строками (wchar_t)---------------
-wcin - объект стандартного потока ввода (класс basic_istream)
-wcout - объект стандартного потока вывода (класс basic_ostream)
-wcerr - объект стандартного потока ошибок (класс basic_ostream)
-wclog - объект стандартного потока ошибок (класс basic_ostream)
---------------------------Пример кода----------------------------------
Код:

#include <iostream>

int main()
{
	int number;
	std::cout<<"Enter a number\n";
	std::cin>>number;
	std::cout<<"You entered "<<number<<std::endl;
	std::cerr<<"Test an error message";
	std::clog<<"Test an log message";
	return 0;
}

//---------------------------------------------------------------------------------

Последний раз редактировалось Alex11223; 21.12.2016 в 19:51.
MaTBeu вне форума   Ответить с цитированием
Старый 05.03.2010, 08:44   #2
Astronaft
Новичок
 
Регистрация: 16.02.2010
Сообщений: 2
Репутация: 10
По умолчанию

Очень полезная кстати информация. ОЧЕНЬ кратко, но пригодиться может всегда)
Astronaft вне форума   Ответить с цитированием
Старый 05.03.2010, 23:28   #3
RoS
Форумчанин
 
Аватар для RoS
 
Регистрация: 13.12.2009
Адрес: Пенза, Россия
Сообщений: 269
Репутация: 46

icq: 362 165 591
По умолчанию

Знал это, новичкам (особенно студентам) будет полезно, прикрепи тему
__________________
Если я помог вам - порадуйте меня, нажмите на весы слева
RoS вне форума   Ответить с цитированием
Старый 06.03.2010, 12:12   #4
Matr1x
Студент
Пользователь
 
Аватар для Matr1x
 
Регистрация: 10.11.2009
Сообщений: 49
Репутация: 24
По умолчанию

автору респект ) очень полезно, многое не знал )
Matr1x вне форума   Ответить с цитированием
Старый 10.01.2015, 14:41   #5
Nitrax
Новичок
 
Аватар для Nitrax
 
Регистрация: 06.01.2015
Сообщений: 1
Репутация: 10
По умолчанию

Спасибо! Очень нужная информация.
Nitrax вне форума   Ответить с цитированием
Старый 29.08.2015, 19:37   #6
Xoce05
Новичок
 
Регистрация: 29.08.2015
Сообщений: 9
Репутация: 10
По умолчанию

так мало? я думал в каждом файле огромное количество различных классов и манипуляторов. кстати как глянуть полный список команд в подключаемой директиве?
Xoce05 вне форума   Ответить с цитированием
Старый 29.08.2015, 21:20   #7
Croessmah
Вредный кошак
Профессионал
 
Аватар для Croessmah
 
Регистрация: 14.10.2012
Адрес: г. Инза
Сообщений: 1,138
Репутация: 362
По умолчанию

Цитата:
Сообщение от Xoce05 Посмотреть сообщение
так мало? я думал в каждом файле огромное количество различных классов и манипуляторов.
Здесь краткое описание.

Цитата:
Сообщение от Xoce05 Посмотреть сообщение
кстати как глянуть полный список команд в подключаемой директиве?
эм... что?
Croessmah вне форума   Ответить с цитированием
Старый 29.08.2015, 21:27   #8
Xoce05
Новичок
 
Регистрация: 29.08.2015
Сообщений: 9
Репутация: 10
По умолчанию

полный список, например, в <fstream> ну или любой другой библиотеке
Xoce05 вне форума   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Операции ввода-вывода а СИ dannae Помощь студентам 0 19.12.2013 22:11
с++ Операторы ввода,вывода _yaroslav_ Общие вопросы C/C++ 0 29.04.2013 02:26
Написать рекурсивную процедуру для ввода с клавиатуры последовательности чи-сел (конец ввода – 0) и вывода её на экран в обратном netiv Паскаль 1 17.02.2012 18:14
переопределение ввода и вывода в С++ blackbanny Помощь студентам 12 03.05.2010 13:08
система ввода вывода StudentPolitech Общие вопросы C/C++ 3 02.04.2009 22:22




00:43.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


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

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru