在c++中cin.setf(ios::hex,ios::basefield)啥意思?特別是后面的basefield什么意思?有什么作用?
1 回答

onemoo
TA貢獻883條經驗 獲得超454個贊
cin 的?setf 函數(shù)是給輸入流設置“格式化flag”。
第一個參數(shù)是這次要設置的 flag(你這里設成了?hex,表示將十六進制用于整型值)。
第二個參數(shù)的作用是掩碼(這個掩碼其實就是某些 flag 的組合),該掩碼的作用是影響第一個參數(shù)的設置范圍?;蛘哒f setf 會先清除掉這個掩碼所表示的 flag,然后再設置第一個參數(shù)的 flag。
而 basefield 這個預設好的掩碼值是?dec | oct | hex | 0,其實就是把十進制、八進制和十六進制都包括了。
那么 cin.setf(ios::hex,ios::basefield) 的意思就是:清除掉之前設置的關于整型進制的 flag,然后將整型進制設置為 hex。
- 1 回答
- 0 關注
- 1328 瀏覽
添加回答
舉報
0/150
提交
取消