c++中的iomanip

c++中的iomanip

进制控制

  • 头文件include<iomanip>
  • hex
  • dec
  • oct
cpp 复制代码
int a=10,b=20,c=0xfff;
cout<<oct<<a<<endl;//8进制输出
cout<<dec<<b<<endl;//10进制输出
cout<<hex<<c<<endl;//16进制输出

输出格式控制

  • setfill('*') 设置填充字符为引号中的符号
  • setw(n) 设置输出宽度为n个字符
  • setprecision(n) 设置显示的有效数字为n位
  • setbase(n) 设置n进制显示
  • setiosflags(ios:😃 参数设定
  • resetflags() 清除前面用setiosflags设置的格式
cpp 复制代码
#include<iostream>
#include<iomanip> 
using namespace std;
int main(){
	int a=10;
	double b=3.141592658;
	double c=1.2232444;
	cout<<a<<endl;
	cout<<setiosflags(ios::showpos)<<a<<endl;//显示符号 
	cout<<setfill('@')<<setw(9)<<a<<endl;//用@当填充字符,字符宽度为9,默认右对齐 
	cout<<setfill('@')<<setw(9)<<setiosflags(ios::left)<<a<<endl;//左对齐 
	cout<<setprecision(3)<<b<<endl; //设置有效数字为3位,包含整数部分 
	cout<<setiosflags(ios::fixed)<<setprecision(3)<<b<<endl;//只显示小数点后的3位 
	cout<<setiosflags(ios::scientific)<<setprecision(3)<<b<<endl;//科学计数法 
	cout<<setbase(16)<<a<<endl;//以16进制输出a,setbase只有8/10/16三种选择 
	cout<<setiosflags(ios::scientific)<<resetiosflags(ios::scientific)<<c<<endl;
	return 0;
}
相关推荐
NeilYuen8 小时前
【C++】STL源码仿写(二):vector
开发语言·c++
郝学胜_神的一滴9 小时前
游戏引擎原理与实践 04:拆解引擎基础系统与内存管理
c++·游戏
All for pursuit.9 小时前
【设计-1】208.实现Trie (前缀树)
数据结构·c++·算法·leetcode
weixin_307779139 小时前
C++代码实现MATLAB中的crossval函数功能
开发语言·c++·算法·matlab
青少儿编程课堂9 小时前
背包问题(0/1 背包与完全背包)解题精讲——动态规划入门
c++·python·算法·bfs·信息学竞赛
倒头就睡的小比特10 小时前
C++多态
c++
潼心1412o12 小时前
C++初阶(长期更新)第5讲:类和对象(中)
开发语言·c++
weixin_3077791312 小时前
C++代码实现MATLAB中的normalize函数功能
开发语言·c++·算法·matlab
(Charon)12 小时前
【C++面试】手写String类:同时实现拷贝构造与移动构造
c++·算法
程序员老陆12 小时前
通过std::unique_ptr初始化std::shared_ptr
开发语言·c++