输入/输出 操纵符
来自 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) |
插入和提取带嵌入空格的带引号字符串 (函数模板) |