cout 格式化的一些方法
Posted 砂糖橘子君
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cout 格式化的一些方法相关的知识,希望对你有一定的参考价值。
cout格式化的方式有很多,和C中的printf相比较,在实现方式上更加容易理解。
1、计数进制。
1、十六进制:hex
2、八进制:oct
3、十进制:dec(默认)
在控制进制的时候,可以使用两种格式:
(1)hex(cout); //也可以是oct(cout)或dec(cout)
(2)cout<<hex; //也可以cout<<oct;或者cout<<dec
示例代码:
1 #include<cstdio> 2 #include<iostream> 3 #include<ctime> 4 #include<fstream> 5 #include<ostream> 6 using namespace std; 7 8 9 int main(){ 10 const int N =16; 11 //第一种实现方式 12 hex(cout); 13 cout<<"hex:"<<N<<endl; 14 oct(cout); 15 cout<<"oct:"<<N<<endl; 16 dec(cout); 17 cout<<"dec:"<<N<<endl; 18 //第二种实现方式 19 cout<<hex<<"hex:"<<N<<endl; 20 cout<<oct<<"oct:"<<N<<endl; 21 cout<<dec<<"dec:"<<N<<endl; 22 return 0; 23 }
2、调整子宽
cout.width(int width); //每次只针对一个项目
示例代码:
1 #include<cstdio> 2 #include<iostream> 3 #include<ctime> 4 #include<fstream> 5 #include<ostream> 6 using namespace std; 7 8 9 int main(){ 10 //cout<<width(5)<<12<<endl; 11 cout.width(12); 12 cout<<121212121<<endl; 13 return 0; 14 }
3、填充字符:
cout.fill(char t);
示例代码:
#include<cstdio> #include<iostream> #include<ctime> #include<fstream> #include<ostream> using namespace std; int main(){ cout.fill(‘*‘); cout.width(12); cout<<12<<endl; return 0; }
4、设置浮点数精度:
cout.precision(int bit);
示例代码:
#include<iostream> using namespace std; int main(){ cout.precision(2); cout<<1.233<<endl; return 0; }
5、打印末尾的0和小数点
cout.setf(ios_base::showpoint);
示例代码:
1 #include<iostream> 2 using namespace std; 3 int main(){ 4 cout.setf(ios_base::showpoint) ; 5 cout<<2.<<endl; 6 cout<<2.323<<endl; 7 return 0; 8 }
6、setf()函数的参数(单个参数版本)
(1)ios_base::boolalpha 显示bool类型的string值(true/false)
(2)ios_base::showbase 显示数字基数前缀(八进制前缀0,十六进制前缀0x)
(3)ios_base::showpoint 显示小数点和末尾的0
(4)ios_base::uppercase 对于十六进制数显示大写字母
(5)ios_base::showpos 对于正数显示前面的+号(基数为10时)
以上是关于cout 格式化的一些方法的主要内容,如果未能解决你的问题,请参考以下文章