Пространства имён
Варианты
Действия

std::fixed, std::scientific, std::hexfloat, std::defaultfloat

Материал из cppreference.com
< cpp‎ | io‎ | manip

 
 
Библиотека ввода/вывода
Манипуляторы ввода/вывода
Функции print(C++23)
Ввод/вывод в стиле C
Буферы
(устарело в C++98)
Потоки
Абстракции
Файловый ввод/вывод
Ввод/вывод строк
Ввод/вывод массивов
(устарело в C++98)
(устарело в C++98)
(устарело в C++98)
Синхронизированный вывод
Типы
Интерфейс категорий ошибок
(C++11)
 
Манипуляторы ввода/вывода
Форматирование чисел с плавающей точкой
fixedscientifichexfloatdefaultfloat
(C++11)(C++11)
Целочисленное форматирование
Булево форматирование
Контроль ширины поля и заполнения
Другое форматирование
Обработка пробелов
Сброс вывода
Манипуляции с флагами состояния
Ввод/вывод времени и денежных едениц
(C++11)
(C++11)
(C++11)
(C++11)
Манипулятор заключения в кавычки
(C++14)
 
Определено в заголовочном файле <ios>
(1)
std::ios_base& scientific(std::ios_base& str );
(2)
std::ios_base& hexfloat(std::ios_base& str );
(3) (начиная с C++11)
std::ios_base& defaultfloat(std::ios_base& str );
(4) (начиная с C++11)
Изменяет форматирования по умолчанию для операций с плавающей точкой I / O
Оригинал:
Modifies the default formatting for floating-point I/O
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
1)
устанавливает floatfield потока str в fixed как при вызове str.setf(std::ios_base::fixed, std::ios_base::floatfield)
Оригинал:
sets the floatfield of the stream str to fixed as if by calling str.setf(std::ios_base::fixed, std::ios_base::floatfield)
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
2)
устанавливает floatfield потока str в scientific как при вызове str.setf(std::ios_base::scientific, std::ios_base::floatfield)
Оригинал:
sets the floatfield of the stream str to scientific as if by calling str.setf(std::ios_base::scientific, std::ios_base::floatfield)
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
3)
устанавливает basefield потока str в fixed и scientific одновременно как при вызове str.setf(std::ios_base::fixed|std::ios_base::scientific, std::ios_base::floatfield). Это позволяет шестнадцатеричную с плавающей точкой форматирования.
Оригинал:
sets the basefield of the stream str to fixed and scientific simultaneously as if by calling str.setf(std::ios_base::fixed|std::ios_base::scientific, std::ios_base::floatfield). This enables hexadecimal floating-point formatting.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
4)
устанавливает basefield потока str к нулю, как при вызове str.unsetf(std::ios_base::floatfield). Это позволяет по умолчанию с плавающей точкой форматирование, которое отличается от фиксированных и научной.
Оригинал:
sets the basefield of the stream str to zero, as if by calling str.unsetf(std::ios_base::floatfield). This enables the default floating-point formatting, which is different from fixed and scientific.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Это I / O манипулятора, его можно назвать с выражением таких как out << std::fixed для любого типа outstd::basic_ostream или выражения, такие как in >> std::scientific для любого типа instd::basic_istream.
Оригинал:
This is an I/O manipulator, it may be called with an expression such as out << std::fixed for any out of type std::basic_ostream or with an expression such as in >> std::scientific for any in of type std::basic_istream.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Содержание

[править]Параметры

str
ссылка на поток ввода / вывода
Оригинал:
reference to I/O stream
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

[править]Возвращаемое значение

str (ссылка на поток после манипуляций)
Оригинал:
str (reference to the stream after manipulation)
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

[править]Пример

#include <iostream>#include <sstream>int main(){std::cout<<"The number 0.01 in fixed: "<< std::fixed<<0.01<<'\n'<<"The number 0.01 in scientific: "<< std::scientific<<0.01<<'\n'<<"The number 0.01 in hexfloat: "<< std::hexfloat<<0.01<<'\n'<<"The number 0.01 in default: "<< std::defaultfloat<<0.01<<'\n';double f;std::istringstream("0x1P-1022")>> std::hexfloat>> f;std::cout<<"Parsing 0x1P-1022 as hex gives "<< f <<'\n';}

Вывод:

The number 0.01 in fixed: 0.010000 The number 0.01 in scientific: 1.000000e-02 The number 0.01 in hexfloat: 0x1.47ae147ae147bp-7 The number 0.01 in default: 0.01 Parsing 0x1P-1022 as hex gives 2.22507e-308

[править]См. также

изменяет точность чисел с плавающей запятой
(функция)[править]
close