cout的输出格式初探

原创 2015年07月08日 20:28:38

在C++中,cout代表的是标准输出设备,即显示器,相对于C语言中所使用的printf函数,cout显得更为灵活。下面以30、300和1024三个数为例子,简单说明cout输出时所选格式的输出。cout默认以十进制方式输出数值,也可以设置为八进制(oct)、十六进制(hex)输出方式,同时还可以显示输出方式的基指示符(进制标识符,例如八进制的O,十六进制的Ox)。

//设置输出格式
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{	
	cout<<"please input a string"<<endl;
	char str[20];
	cin>>str; //cin默认以空格作为定界符,考虑使用getline()函数
	cout<<"str = "<<str<<endl;
	
	cout<<"----------------"<<endl;

	int x = 20, y = 300, z = 1024;
	cout<<x<<' '<<y<<' '<<z<<endl;

	cout.unsetf(ios::dec); //取消十进制输出格式
	cout.setf(ios::showbase | ios::uppercase); //showbase是基指示符,指示进制,uppercase只对于OX大写有效
	cout<<x<<' '<<y<<' '<<z<<endl;
	
	cout.unsetf(ios::showbase | ios::uppercase); //取消showcase和uppercase
	cout.setf(ios::oct); //设置八进制输出格式
	cout<<x<<' '<<y<<' '<<z<<endl;

	cout.setf(ios::showbase | ios::uppercase);
	cout<<x<<' '<<y<<' '<<z<<endl;
	
	cout.unsetf(ios::oct);
	cout.unsetf(ios::showbase | ios::uppercase ); 
	cout.setf(ios::hex); //设置十六进制输出格式
	cout<<x<<' '<<y<<' '<<z<<endl;

	//cout.unsetf(ios::showbase | ios::lowercase ); //lowercase在此处不行
	//cout<<x<<' '<<y<<' '<<z<<endl;

	cout.setf(ios::showbase | ios::uppercase);
	cout<<x<<' '<<y<<' '<<z<<endl;

	cout.unsetf(ios::showbase | ios::uppercase);
	cout.unsetf(ios::hex);
	cout<<x<<' '<<y<<' '<<z<<endl;

	cout<<"----------------"<<endl;
	cout<<x<<' '<<y<<' '<<z<<endl; //按十进制输出
	cout<<oct<<x<<' '<<y<<' '<<z<<endl; //按八进制输出

	cout<<setiosflags(ios::showbase); //设置基指示符 //setiosflags设置
	cout<<x<<' '<<y<<' '<<z<<endl; //仍按八进制输出
	
	cout<<resetiosflags(ios::showbase); //取消基指示符 //resetiosflags取消
	cout<<hex<<x<<' '<<y<<' '<<z<<endl; //按十六进制输出
	
	//设置基指示符和数值中的字母大写输出
	cout<<setiosflags(ios::showbase | ios::uppercase);
	cout<<x<<' '<<y<<' '<<z<<endl; //仍按十六进制输出
	
	//取消基指示符和数值中的字母大写输出
	cout<<resetiosflags(ios::showbase | ios::uppercase);
	cout<<x<<' '<<y<<' '<<z<<endl; //仍按十六进制输出
	
	cout<<dec<<x<<' '<<y<<' '<<z<<endl; //按十进制输出

	return 0;
}

程序运行结果如下:


版权声明:本文为博主原创文章,未经博主允许不得转载。

如何设置cout的输出格式(转)

如何设置cout的输出格式(转)编程笔记设置cout的输出格式有两种办法,一种是用cout的成员变量,一种是用里面提供的函数比如要设置输出的行宽,就有两种方法:#include#includeusin...
  • Ididcan
  • Ididcan
  • 2009年08月31日 09:41
  • 4400

C++ cout输出格式总结

这篇文章主要讲解如何在C++中使用cout进行高级的格式化输出操作,包括数字的各种计数法(精度)输出,左或右对齐,大小写等等。通过本文,您可以完全脱离scanf/printf,仅使用cout来完成一切...
  • u010525694
  • u010525694
  • 2017年11月20日 11:45
  • 143

cout的输出格式初探3

#include #include using namespace std; int main() { double f=2.0/3.0,f1=0.000000001,f2=-9.9; co...
  • GarfieldEr007
  • GarfieldEr007
  • 2015年07月09日 09:25
  • 440

cout的输出格式初探2

#include #include using namespace std; int main() { cout
  • GarfieldEr007
  • GarfieldEr007
  • 2015年07月09日 09:21
  • 427

cout标准输出流常用控制格式

使用这些格式需要声明包含 long flags( ) const 返回当前的格式标志。  long flays(long newflag) 设置格式标志为newflag,返回旧的格式标志。  ...
  • snail0428
  • snail0428
  • 2016年07月31日 12:59
  • 932

如何在C++中使用cout进行高级的格式化输出操作

这篇文章主要讲解如何在C++中使用cout进行高级的格式化输出操作,包括数字的各种计数法(精度)输出,左或右对齐,大小写等等。通过本文,您可以完全脱离scanf/printf,仅使用cout来完成一切...
  • qaxzplmokn3
  • qaxzplmokn3
  • 2017年05月19日 09:16
  • 699

cout 输出控制

cout输出格式控制 如果要在输出流中加入格式控制符则要加载头文件:#include   这里面iomanip的作用比较多:   主要是对cin,cout之类的一些操纵运算子,比如setfil...
  • wolinxuebin
  • wolinxuebin
  • 2012年04月23日 16:18
  • 20588

cout函数控制结果输出形式

cout函数控制结果输出的形式
  • u013160795
  • u013160795
  • 2016年09月06日 10:41
  • 339

C++ cout格式化输出(转)

这篇文章主要讲解如何在C++中使用cout进行高级的格式化输出操作,包括数字的各种计数法(精度)输出,左或右对齐,大小写等等。通过本文,您可以完全脱离scanf/printf,仅使用cout来完成一切...
  • qq_21120027
  • qq_21120027
  • 2015年12月22日 19:21
  • 3271

printf 与 cout 输出格式的简单比较

一、 printf的输出格式1、控制整形宽度以整型为例:printf("%md", a);此处m为输出地宽度,默认为右对齐,左边填充空格;若a的实际长度大于m,则m失效。若改为printf("%0md...
  • zhaofukai
  • zhaofukai
  • 2010年11月21日 17:36
  • 3544
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:cout的输出格式初探
举报原因:
原因补充:

(最多只允许输入30个字)