std::showbase, std::noshowbase
来自cppreference.com
该页由英文版wiki使用Google Translate机器翻译而来。
该翻译可能存在错误或用词不当。鼠标停留在文本上可以看到原版本。你可以帮助我们修正错误或改进翻译。参见说明请点击这里. |
在头文件 <ios> 中定义
|
||
std::ios_base& showbase( std::ios_base& str ); |
(1) | |
std::ios_base& noshowbase( std::ios_base& str ); |
(2) | |
这是一个I / O操纵器,它可被称为与表达式如out << std::showbase类型
out
任何std::basic_ostream,或与一个表达式如in >> std::showbase类型in
任何std::basic_istream.原文:
This is an I/O manipulator, it may be called with an expression such as out << std::showbase for any
out
of type std::basic_ostream or with an expression such as in >> std::showbase for any in
of type std::basic_istream.目录 |
[编辑] 参数
str | - | 参考I / O流
|
[编辑] 返回值
str
(参考操作后到流)原文:
str
(reference to the stream after manipulation)[编辑] 示例
#include <sstream> #include <locale> #include <iostream> #include <iomanip> int main() { // showbase affects the output of octals and hexadecimals std::cout << std::hex << "showbase: " << std::showbase << 42 << '\n' << "noshowbase: " << std::noshowbase << 42 << '\n'; // and both input and output of monetary values std::locale::global(std::locale("en_US.utf8")); long double val = 0; std::istringstream is("3.14"); is >> std::showbase >> std::get_money(val); std::cout << "With showbase, parsing 3.14 as money gives " << val << '\n'; is.seekg(0); is >> std::noshowbase >> std::get_money(val); std::cout << "Without showbase, parsing 3.14 as money gives " << val << '\n'; }
输出:
showbase: 0x2a noshowbase: 2a With showbase, parsing 3.14 as money gives 0 Without showbase, parsing 3.14 as money gives 314
[编辑] 另请参阅
清除指定的ios_base标志 (函数) | |
设置指定的ios_base标志 (函数) |