我是一名大一学生,这是我写的第一篇博客,主要起到做笔记的作用,请大家多多指教。如有错误还请指出,谢谢。随意转载。(不会有的呢)这些操纵符需要#include <iomanip>才能使用
dec采用十进制输出。为默认输出设置。hex
采用十六进制输出。如果在输出流中插入一个 showbase 操纵符,还会输出0x前缀
oct
采用八进制输出。(基本没什么卵用呢)setprecision(x)
设置浮点数的输出精度x。这个精度在默认状态下指的是小数点前后所有数字的位数。如果同时插入了fixed操纵符,则精度指的是小数点后数字的位数。需要注意的是,其会对数据进行舍入。
setw(n)
设置每个数据的显示宽度
下面我们给出一个栗子
/*
我是一个栗子
20180311
*/
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
int main(void) {
int num = 16;
cout << "num = " <<num << endl;
//这三行的长度看起来不一样...是因为vs不是等宽字体吗?
cout << dec << "dec = " << num << endl;
cout << hex << "hex = " << num << endl;
cout << oct << "oct = " << num << endl;
double num2 = 3.1415926;
cout << num2 << endl;
cout << setprecision(4) << num2 << endl;
cout << fixed << num2 << endl;
string str1 = "CHINA";
string str2 = "RUSSIA";
int area1 = 960;
int area2 = 1700;
cout << setw(6) << str1 << " " << setw(4) << area1 << endl;
cout << setw(6) << str2 << " " << setw(4) << area2 << endl;
cin.get();
}
OUTPUT
num = 16
dec = 16
hex = 10
oct = 20
3.14159
3.142
3.1416
CHINA 1700
RUSSIA 3244
over~