c 中格式化輸出。十六進製制浮點數0x p輸出問題

2021-07-05 10:43:16 字數 1285 閱讀 3691

不可用cin讀取空格,回車換行,tab。若要則用getchar。

格式化輸入輸出需要iomanip標頭檔案。

預設不加為6位有效數字。

在輸入流與輸出流中使用控制符

dec hex oct 10 16 8進製,設定之後一直有效。

setprecision(n)有效位數 一般十進位制小數形式輸出時,n代表有效數字。在以fixed(固定小數字數)形式和 scientific(指數)形式輸出時,n為小數字數

setfill填充字元

setw(n)位寬n  setw範圍僅為之後乙個數字。cout《了。寬度包括正負,小數點。

直接寫cout《16 8進製下輸出24

setiosflags( ios::fixed)

固定的小數字數

setiosftags( ios::scientific)科學記數法(即指數形式)

setiosflags( ios::left)左對齊

setiosflags( ios::right)右對齊

setiosflags( ios::skipws)忽略前導的空格

setiosflags( ios::uppercase)十六進製制形式字母大寫

setiosflags( ios::lowercase)十六進製制形式宇母小寫

setiosflags(ios::showpos)正數帶+

用了scientific再用fixed預設輸出為十六進製制浮點數  0x1.2p2表示(1+2*1/16)*2^2

cout << setiosflags(ios::fixed) << 1.25 << setiosflags(ios::scientific) << 1.25 << setiosflags(ios::fixed) << 1.25《輸出1.25 1.4 1.4

用流物件的成員函式控制輸出格式

流成員函式

與之作用相同的控制符

作用precision(n)

setprecision(n)

設定實數的精度為n位

width(n)

setw(n)

設定字段寬度為n位

fill(c)

setfill(c)

設定填充宇符c

setf()

setiosflags()

設定輸出格式狀態,括號中應給出格式狀態,內容與控制符setiosflags括號中的內容相同,如表13.5所示

unsetf()

resetioflags()

終止已設定的輸出格式狀態,在括號中應指定內容

若要結束則用resetiosflags結束它。

十六進製制表示浮點數

十六進製制表示浮點數需要先將浮點數表示為二進位制的數字。整數部分,除以2取餘數表示為整數部分 小數部分,乘以2取整數部分 以 2.45 轉化為二進位制為例 整數部分 2 可以表示為 10 小數部分 0.45 2 0.9 取整數 0 0.9 2 1.8 取整數 1 0.8 2 1.6 取整數 1 0....

c 十進位制 八進位制 十六進製制格式化輸出

在輸出資料時,為簡便起見,往往不指定輸出的格式,由系統根據資料的型別採取預設的格式,但有時希望資料按指定的格式輸出,如要求以十六進製制或八進位制形式輸出乙個 整數,對輸出的小數只保留兩位小數等。有兩種方法可以達到此目的。一種是我們已經介紹過的使用控制符的方法 詳情請檢視 c 輸入cout與輸出cin...

FormatFloat 格式化浮點數

和0的區別 是對應位有值顯示,無值不顯示 0是對應位有值顯示,無值顯示0 分號後的字串是對負值的格式化特殊定義 s formatfloat 00.0 0.00 1.123 返回 01.1 s formatfloat 00.0 0.00 1.123 返回 1.12 其他格式化 s formatfloa...