1、十進(jìn)制、八進(jìn)制、十六進(jìn)制
cout << dec; //十進(jìn)制
cout << oct; //八進(jìn)制
cout << hex; //十六進(jìn)制,等同于hex(cout);
2、輸出的寬度調(diào)整
cout.width(3); //width()只對(duì)下一個(gè)將顯示的內(nèi)容起作用
cout << 1; //顯示“ 1”
3、填充字符
cout.fill('*'); //使用*填充字段未被使用的部分,一直有效除非再次被更改
4、精度
cout.precision(2); //精度設(shè)為2
5、setf()
- 打印末尾的0和小數(shù)點(diǎn)
cout.setf(ios_base::showpoint); //按照精度顯示小數(shù)點(diǎn)及小數(shù)點(diǎn)后的0
- fmtflags setf(fmtflags);
cout.setf(ios_base::boolalpha);
| 常量 | 含義 |
|---|---|
| ios_base::boolalpha | 輸入和輸出bool值,可以為true或false |
| ios_base::showbase | 對(duì)于輸出,使用C++基數(shù)前綴(0,0x) |
| ios_base::showpoint | 顯示末尾的小數(shù)點(diǎn) |
| ios_base::uppercase | 對(duì)于16進(jìn)制輸出,使用大寫(xiě)字母,E表示法 |
| ios_base::showpos | 在正數(shù)前面加上+ |
- fmtflags setf(fmtflags,fmtflags);
| 第二個(gè)參數(shù) | 第一個(gè)參數(shù) | 含義 |
|---|---|---|
| ios_base::basefield | ios_base::dec ios_base::oct ios_base::hex |
使用基數(shù)10 使用基數(shù)8 使用基數(shù)16 |
| ios_base::floatfield | ios_base::fixed ios_base::scientific |
使用定點(diǎn)計(jì)數(shù)法 使用科學(xué)計(jì)數(shù)法 |
| ios_base::adjustfield | ios_base::left ios_base::right ios_base::internal |
使用左對(duì)齊 使用右對(duì)齊 符號(hào)或基數(shù)前綴左對(duì)齊,值右對(duì)齊 |
eg.
ios_base::fmtflags old = cout.setf(ios_base::left, ios_base::adjustfield); //設(shè)為左對(duì)齊
cout.setf(old, ios_base::adjustfield); //恢復(fù)默認(rèn)
//cout.unsetf(ios_base::adjustfield); //恢復(fù)默認(rèn)的另一種方式
6、標(biāo)準(zhǔn)控制符(更方便的用法)
eg.
cout << left << fixed;
提供包括boolalpha、noboolalpha、showbase、noshowbase、showpoint、noshowpoint、showpos、noshowpos、uppercase、nouppercase、internal、left、right、dec、hex、oct、fixed、scientific。
7、頭文件iomanip
- setprecision()
- setw()
- setfill()
eg.
#include <iomanip>
……
cout << setprecision(2) << n;