cout的格式化控制

cout对格式的控制

#include "stdafx.h"
#include <iostream>
using namespace std;

#include <iomanip>//set有关函数的头文件


int _tmain(int argc, _TCHAR* argv[])
{
	printf("%c%d%f\n\n",'a',100,123.45);
	printf("%5c%5d%6.2f\n", 'a', 100, 123.45);
	printf("%-5c%-5d%6.2f\n",'a',100,123.45);//加-为左对齐,不加默认为右对齐
	cout << "=============================================================" << endl;
	cout<< setw(5) << 'a' << setw(5) << 100 << setw(6) << 123.45 << endl;
	cout<<setiosflags(ios::left)<<setw(5)<<'a'<<setw(5)<<100<<setw(6)<<123.45<<endl;
	cout << setprecision(4) << 123.45477897 << endl;
	cout <<setiosflags(ios::fixed) << setprecision(3) << 123.4547 << endl;
	cout << setiosflags(ios::right) << setw(5) << 'a' << endl;
	
	//1.cout 默认输出六位有效数据

	//2.setw(x) 为控制域宽的函数 x为长度

	//3.setprecision(x) 可以设置有效位数

	//4.setiosflags(ios::    ) 类型函数为范围性函数 如果此处运用了这个函数 
	//则从此处开始之后的都满足这个条件 除非重新定义条件

	//5.setiosflags(ios::left) 可以控制左对齐 反之right控制右对齐

	//6.setiosflags(ios::fixed)<<setprecision(x) 俩者连用可以设置小数点右面的位数有x位 


	cout << "=============================================================" << endl;
	cout<<hex<<15<<endl; //以十六进制打印(%x)
	cout<<oct<<15<<endl; //以八进制打印(%o)
	cout<<dec<<15<<endl; //以十进制打印(默认)
	cout << setbase(10) << 15 << endl;
	//setbase函数只可以输出 8 10 16进制的数 参数如果填其他数 默认输出10进制数

	cout << "=============================================================" << endl;

	cout << setw(2) <<setfill('0')<< 3 << ":" << setw(2) << 5 << endl;
	//setfill() 的参数为字符型,可以将域宽内空余的地方填入想要的值 
	//而且为范围性的 只需要在前面填一次后面都满足
	
	return 0;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值