C++基础之格式化输出
2017-09-29 16:44
274 查看
在C语言里面,使用printf()函数格式化输出。例如printf(“%d-%f-%2.5f”,a,b,c);
但是在C++里面就尴尬了,cout << a << b << c << endl;输出的都是默认格式,这些往往不是我们需要的格式。
在C++里面也提供了格式化输出的方法,但是方法比C语言稍微麻烦。C++格式化输出需要引入头文件:#include ,里面提供的方法基本功能与printf()一样,如下两者的对比:
下面看个简单的例子:模拟一个秒表,格式:HH:mm:ss
但是在C++里面就尴尬了,cout << a << b << c << endl;输出的都是默认格式,这些往往不是我们需要的格式。
在C++里面也提供了格式化输出的方法,但是方法比C语言稍微麻烦。C++格式化输出需要引入头文件:#include ,里面提供的方法基本功能与printf()一样,如下两者的对比:
序号 | 内容 | C++ | C语言 |
---|---|---|---|
1 | 十进制输出 | dec | “%d” |
2 | 八进制输出 | otc | “%o” |
3 | 十六进制输出 | hex | “%x” |
4 | 填充字符 | setfill(‘0’) | “0%d” |
6 | 设置小数点显示 | setprecision(n) | “0%.2f” |
7 | 设置区域宽度 | setw(5) | “0%5” |
8 | 固定的浮点显示 | setioflags(ios::fixed) | |
9 | 指数表示 | setioflags(ios::scientific) | |
10 | 左对齐 | setiosflags(ios::left) | %”-2f” |
11 | 右对齐 | setiosflags(ios::right) | %”2f” |
12 | 忽略前导空白 | setiosflags(ios::skipws | |
13 | 16进制数大写输出 | setiosflags(ios::uppercase) | “%x” |
14 | 16进制小写输出 | setiosflags(ios::lowercase) | “%X” |
15 | 强制显示小数点 | setiosflags(ios::showpoint) | |
16 | 强制显示符号 | setiosflags(ios::showpos) |
#include <iostream> #include <iomanip> using namespace std; int main() { int hour = 0; int min = 0; int sec = 0; for(int i=0; i<10000; i++) { cout << "\t" <<setfill('0') <<setw (2) << hour <<":" << setw (2) << min <<":" << setw (2) << sec << endl; sec++; if(sec > 59){ min++; sec=0; } if(min>59){ hour++; min=0; } sleep(1); } return 0; }
相关文章推荐
- C++基础——格式化输出
- C/C++编程语言中的基础知识(一)--格式化输入输出
- c/c++基础知识读书笔记二 格式化输入输出
- C++ ACM 基础 cin重定向 cout 格式化输出
- C++语言基础(25)-C++格式化输出
- C++的格式化输出
- C++格式化输出小数点后位数
- c++风格的格式化输出
- 【常规解题报告】C++格式化输出和关于字符串的一些常用法
- Python入门(二)——IDE选择PyCharm,输入和输出,基础规范,数据类型和变量,常量,字符串和编码,格式化
- C++中格式化输出
- C++ stream格式化输出输入
- C++中 cout的格式化输出(保留小数)
- C++保留任意小数点后位数与格式化输出
- C++格式化输出
- C++的格式化输出
- C++学习基础八——重载输入和输出操作符
- C++格式化输出
- C++关于cout的格式化输出
- C++中的格式化输出