输入/输出操纵器
来自 cppreference.cn
操纵器是辅助函数,通过使用 operator<< 或 operator>> 来控制输入/输出流。
不带参数调用的操纵器(例如 std::cout << std::boolalpha; 或 std::cin >> std::hex;)实现为以流的引用作为唯一参数的函数。 basic_ostream::operator<< 和 basic_istream::operator>> 的特殊重载接受指向这些函数的指针。 这些函数(或函数模板的实例化)是标准库中唯一可寻址的函数。(C++20 起)
带参数调用的操纵器(例如 std::cout << std::setw(10);)实现为返回未指定类型对象的函数。这些操纵器定义它们自己的 operator<<
或 operator>>
来执行请求的操作。
定义于头文件
<ios> | |
在布尔值的文本表示和数字表示之间切换 (函数) | |
控制是否使用前缀指示数字基数 (函数) | |
控制浮点表示中是否始终包含小数点 (函数) | |
控制非负数是否使用 + 符号(函数) | |
控制输入时是否跳过前导空白字符 (函数) | |
控制某些输出格式是否使用大写字符 (函数) | |
控制每次操作后是否刷新输出 (函数) | |
设置填充字符的位置 (函数) | |
更改整数 I/O 所用的基数 (函数) | |
(C++11)(C++11) |
更改浮点 I/O 所用的格式 (函数) |
定义于头文件
<istream> | |
消耗空白字符 (函数模板) | |
定义于头文件
<ostream> | |
输出 '\0' (函数模板) | |
刷新输出流 (函数模板) | |
输出 '\n' 并刷新输出流 (函数模板) | |
(C++20) |
控制流的 basic_syncbuf 是否在刷新时发出内容 (函数模板) |
(C++20) |
刷新流并在流使用 basic_syncbuf 时发出内容 (函数模板) |
定义于头文件
<iomanip> | |
清除指定的 ios_base 标志 (函数) | |
设置指定的 ios_base 标志(函数) | |
更改整数 I/O 所用的基数 (函数) | |
更改填充字符 (函数模板) | |
更改浮点精度 (函数) | |
更改下一个输入/输出字段的宽度 (函数) | |
(C++11) |
解析货币值 (函数模板) |
(C++11) |
格式化并输出货币值 (函数模板) |
(C++11) |
解析指定格式的日期/时间值 (函数模板) |
(C++11) |
根据指定格式格式化并输出日期/时间值 (函数模板) |
(C++14) |
插入和提取带嵌入空格的带引号字符串 (函数模板) |