C++编程中的格式化输出详解

2020-01-06 13:48:19于海丽

运行结果如下:

 

  1. input a:34↙(输入a的值)  dec:34 (十进制形式) 
  2. hex:22 (十六进制形式)  oct:42 (八进制形式) 
  3. China (域宽为)  *****China (域宽为,空白处以'*'填充) 
  4. pi=3.14285714e+00 (指数形式输出,8位小数)  pi=3.1429e+00 (指数形式输出,4位小数) 
  5. pi=3.143 (小数形式输出,精度仍为) 

用流对象的成员函数控制输出格式

除了可以用控制符来控制输出格式外,还可以通过调用流对象cout中用于控制输出格式的成员函数来控制输出格式。用于控制输出格式的常用的成员函数见表

C++编程中的格式化输出详解

流成员函数setf和控制符setiosflags括号中的参数表示格式状态,它是通过格式标志来指定的。格式标志在类ios中被定义为枚举值。因此在引用这些格式标志时要在前面加上类名ios和域运算符“::”。格式标志见下表

C++编程中的格式化输出详解

[例] 用流控制成员函数输出数据。

 

 
  1. #include <iostream>  using namespace std; 
  2. int main( )  { 
  3. int a=21  cout.setf(ios::showbase);//显示基数符号(0x或) 
  4. cout<<"dec:"<<a<<endl; //默认以十进制形式输出a  cout.unsetf(ios::dec); //终止十进制的格式设置