輸出輸入流可以通過各種方式設定多種多樣的格式化操作,給輸出輸入提供多種選項。
每種格式化將輸出將通過兩種方式進行描述,一種是操縱符,一種是成員函式。操作符一般在流中插入以進行格式化輸出,成員函式則是通過物件呼叫起作用。
注意,流操縱符一般都在iomanip.h
中,而成員函式一般都在iostream.h
中。
整型數字的顯示格式
int n = 100;
cout << dec << n << endl; //十進位制
cout << oct << n << endl; //八進位制
cout << hex << n << endl; //十六進製制
cout << setbase(10) << n << endl; //通過引數來設定進製
100
14464
100
設定之後會一直起作用,具有黏性
cout << showbase; //呼叫顯示基數
int n = 100;
cout << dec << n << endl;
cout << oct << n << endl;
cout << hex << n << endl;
cout << noshowbase; //重置設定
cout << hex << n << endl;
100
0144
0x64
64
浮點數顯示的精度,一般預設是6,可設定
const int pi = 3.14159;
for (int i = 0; i < 6; i++)
cout << setprecision(i) << pi << endl; //設定顯示精度
3
3.13.14
3.141
3.1415
3.14159
會一直影響後面的輸出直到下一次設定精度操作
const double pi = 3.14159;
for (int i = 0; i < 6; i++)
3
3.13.14
3.141
3.1415
3.14159
會一直影響後面的輸出直到下一次設定精度操作
域寬也就是輸出值所佔的字元數或者是可以輸入的最大字元數,如果輸出的字元不夠在左邊用空格(預設)來湊
int widthvalue = 4;
char sentence[10];
while (cin >> setw(5) >> sentence)
this is a test of the width member function
thisisa
test
ofthe
widt
hmemb
erfunc
tion
僅能影響下一次的輸入或輸出,不具備黏性
注意是預設的對齊方式,即右對齊左邊填充字元
int widthvalue = 4;
char sentence[10];
cin.width(5); //設定輸入的寬度,即一次最多讀入多少字元
while (cin >> sentence)
this is a test of the width member function
thisisa
test
ofthe
widt
hmemb
erfunc
tion
僅能影響下一次的輸入或輸出,不具備黏性
輸出字元的對齊方式
cout << left << 輸出內容;
cout << right << 輸出內容;
具有黏性
為了能看出效果一般和setw搭配使用
left是使域左對齊並在右邊填充填充字元,right是使域右對齊並在左邊填充字元
指定對齊域的填充字元,如果沒有被指定,則使用空格符填充
cout << setfill(char c) << 輸出內容;
具有黏性
一般和設定域寬和對齊方式一起使用
cout.fill(char c);
cout << 輸出內容;
具有黏性
一般和設定域寬和對齊方式一起使用
流操縱符
適用流描述
skipws
輸入流跳過輸入流的空白字元,使用流操縱符noskipws重置設定
showpoint
輸出流指明浮點數必須顯示小數點即使全部是0,同長使用fixed流操縱符來確保小數點右邊陣列的位數,可以使用noshowpoint重置
showpos
輸出流在正數前顯示+,可以使用noshowpos重置
fixed
輸出流以定點小數的形式顯示浮點數,並指定小數點右邊的位數
scientific
輸出流以科學計數法的輸出顯示浮點數
uppercase
輸出流指明當顯示十六進製制數時使用大寫字母,可以使用nouppercase重置
格式化輸入與輸出
格式化輸入與輸出 printf 格式控制 輸出列表 1 格式控制 是用雙撇號括起來的字串,通常也叫 轉換控制字串 它包括兩種資訊。a 格式說明。格式說明由 和格式字元組成,如 d f 等,作用是將輸出的資料轉換成指定的格式輸出。格式說明總是由 字元開始。b 普通字元。普通字元即需要原樣輸出的字元。2...
格式化輸入 輸出
scanf 函式和 printf 函式是c語言程式設計中使用最頻繁的兩個函式,他們用來格式化輸入和輸出。printf 函式 printf 格式串,表示式1,表示式2 格式串包含普通字元和轉換說明 轉換說明以 字元開頭 轉換說明可以用 m.px格式或 m.px格式 m和p都是整數常量,而x是字母。m和...
格式化輸入輸出
格式化輸入輸出 1.printf flags width prec hil type scanf flag type flag 標誌 含義 左對齊 在前面放 或 space 正數留空 0 0填充 int main width或prec 含義 number 最小字元數 下乙個引數是字元數 number...