流操縱算子 | 做 用 | |
---|---|---|
*dec | 以十進制形式輸出整數 | 經常使用 |
hex | 以十六進制形式輸出整數 | |
oct | 以八進制形式輸出整數 | |
fixed | 以普通小數形式輸出浮點數 | |
scientific | 以科學計數法形式輸出浮點數 | |
left | 左對齊,即在寬度不足時將填充字符添加到右邊 | |
*right | 右對齊,即在寬度不足時將填充字符添加到左邊 | |
setbase(b) | 設置輸出整數時的進制,b=八、10 或 16 | |
setw(w) | 指定輸出寬度爲 w 個字符,或輸人字符串時讀入 w 個字符 | |
setfill(c) | 在指定輸出寬度的狀況下,輸出的寬度不足時用字符 c 填充(默認狀況是用空格填充) | |
setprecision(n) | 設置輸出浮點數的精度爲 n。 在使用非 fixed 且非 scientific 方式輸出的狀況下,n 即爲有效數字最多的位數,若是有效數字位數超過 n,則小數部分四舍五人,或自動變爲科學計 數法輸出並保留一共 n 位有效數字. 在使用 fixed 方式和 scientific 方式輸出的狀況下,n 是小數點後面應保留的位數 |
|
setiosflags (標誌) | 將某個輸出格式標誌置爲 1 | |
resetiosflags(標誌) | 將某個輸出格式標誌置爲 0 | |
boolapha | 把 true 和 false 輸出爲字符串 | 不經常使用 |
*noboolalpha | 把 true 和 false 輸出爲 0、1 | |
showbase | 輸出表示數值的進制的前綴 | |
*noshowbase | 不輸出表示數值的進制.的前綴 | |
showpoint | 老是輸出小數點 | |
*noshowpoint | 只有當小數部分存在時才顯示小數點 | |
showpos | 在非負數值中顯示 + | |
*noshowpos | 在非負數值中不顯示 + | |
*skipws | 輸入時跳過空白字符 | |
noskipws | 輸入時不跳過空白字符 | |
uppercase | 十六進制數中使用 A~E。若輸出前綴,則前綴輸出 0X,科學計數法中輸出 E | |
*nouppercase | 十六進制數中使用 a~e。若輸出前綴,則前綴輸出 0x,科學計數法中輸出 e。 | |
internal | 數值的符號(正負號)在指定寬度內左對齊,數值右對 齊,中間由填充字符填充 |
表 1 中,「流操縱算子」欄中的星號*
不是算子的一部分,星號表示在沒有使用任何算子的狀況下,就等效於使用了該算子。ios
ostream 類有一些成員函數,經過 cout 調用它們也能用於控制輸出的格式,其做用和流操縱算子相同,如表 2 所示。
函數
成員函數 | 做用相同的流操縱算子 |
---|---|
precision(n) | setprecision(n) |
width(w) | setw(w) |
fill(c) | setfill (c) |
setf(標誌) | setiosflags(標誌) |
unsetf(標誌) | resetiosflags(標誌) |
setf 和 unsetf 函數用到的「標誌」,與 setiosflags 和 resetiosflags 用到的徹底相同。spa