函式
<ios> <iostream> <iostream>
std::dec
ios_base& dec (ios_base& str);
使用十進位制
將 str 流的 basefield 格式標誌設定為 dec。
當 basefield 設定為 dec 時,插入到流中的整數值將以十進位制(即基數為10)表示。對於輸入流,當設定此標誌時,提取的值也應以十進位制表示。
basefield 格式標誌可以取以下任一值(每個值都有自己的操縱符)
標誌值 | 設定時的效果 |
dec | 使用十進位制格式讀取/寫入整數值。 |
hex | 使用十六進位制格式讀取/寫入整數值。 |
oct | 使用八進位制格式讀取/寫入整數值。 |
對於標準流,basefield 標誌在初始化時設定為 dec。
引數
- str
- 其 basefield 格式標誌 受到影響的流物件。
因為此函式是一個操縱符,它被設計為在不帶引數的情況下,與流上的插入 (<<
) 和提取 (>>
) 操作結合使用(見下例)。
示例
1 2 3 4 5 6 7 8 9 10
|
// modify basefield
#include <iostream> // std::cout, std::dec, std::hex, std::oct
int main () {
int n = 70;
std::cout << std::dec << n << '\n';
std::cout << std::hex << n << '\n';
std::cout << std::oct << n << '\n';
return 0;
}
|
輸出
資料競爭
修改 str。對同一個流物件的併發訪問可能導致資料競爭。
異常安全
基本保證:如果丟擲異常,str 處於有效狀態。