c++中的iomanip

c++中的iomanip

  • 进制控制
  • 输出格式控制

进制控制

  • 头文件include
  • hex
  • dec
  • oct
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设置的格式
#include
#include 
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;
}

你可能感兴趣的:(C++,c++,c++中的iomanip)