cout.
width
(int length)
;
常與cout.flags(ios::left)
orcout.flags(ios::right)
搭配使用,來控制居左、居右輸出
作用域:只能控制下面一句 cout 輸出!
例:
string s =
"she"
;char ch =
'v';
cout.
width(5
);cout.
flags
(ios::right)
;cout << s << endl;
// __she,起作用
cout << ch << endl;
// v,未起作用
cout.
fill
(char c)
與cout.width(int length)
搭配使用,用字元填充空白
作用域:只能控制下面一句 cout 輸出!
例:
cout.
fill
('0');
cout.
width(3
);int a =1;
int b =2;
cout << a << endl;
// 001
cout << b << endl;
// 2
// 如果想要一直保持此格式,可在每一次輸出前加一句 cout.width();
for(
int i =
0; i <
3; i++
)// 000
// 001
// 002
與cout.flags(ios::fixed);
搭配使用,控制小數輸出位數,如果不加cout.flags(ios::fixed);
而僅使用cout.precision(int len);
則任何效果!
cout.
precision
(int len)
;// 保留 len 位小數
cout.
flags
(ios::fixed)
;
作用域:能控制下面所有的浮點數輸出!
例:
float a =
2.4423
;double b =
2.1;
cout.
precision(3
);// 保留 3 位小數
cout.
setf
(ios::fixed)
;cout << a << endl;
// 2.442
cout << b << endl;
// 2.100
取消此效果用cout.unsetf(ios::fixed);
cout.
flags
(ios::showpos)
;
作用域:能控制下面所有的數字輸出!
例:
cout.
flags
(ios::showpos)
;int a1 =0;
cout <<
3.12
<< endl;
// +3.12
cout << a1 << endl;
// +0
取消此效果用cout.unsetf(ios::showpos);
一般情況下,是預設十進位制輸出
cout.
flags
(ios::oct)
;cout.
flags
(ios::dec)
;cout.
flags
(ios::hex)
;
作用域:能控制下面所有的數字輸出!
例:
int a =12;
cout.
flags
(ios::oct)
;cout << a << end;
// 14
cout.
flags
(ios::dec)
;cout << a << end;
// 12
cout.
flags
(ios::hex)
;cout << a << end;
// c
cout.
put(
char c)
;
直接輸出乙個字元,不受流的格式化參量影響
例:
cout.
fill
('*');
cout.
width(3
);cout.
put(
'a')
<< endl;
// a
cout.
width(3
);cout <<
'a'<< endl;
// **a
詳見官網 C 輸出流cout方法
輸出指定字數的字串。basic ostream write const char type s,streamsize n 1 write遇到空字元時不會停止 2 即使超出邊界,write仍繼續列印 3 可用於資料資料 需將數值資料強制轉換為char 計數制函式 十進位制 十六進製制 八進位制 調整字...
C 輸出流cout方法
輸出指定字數的字串。basic ostream write const char type s,streamsize n 1 write遇到空字元時不會停止 2 即使超出邊界,write仍繼續列印 3 可用於資料資料 需將數值資料強制轉換為char 計數制函式 十進位制 十六進製制 八進位制 調整字...
cout格式化輸出 C
由於class ifstream ofstream分別為class istream ostream派生來的,所以,下面介紹的cout輸出的格式化,在檔案的輸出時使用方法相同。由於使用iostream工具來設定一些格式值不太方便,為簡化工作,c 在標頭檔案iomanip中提供了一些控制符,他們能夠提供...