C 格式化輸入與輸出

2021-09-24 16:37:57 字數 1579 閱讀 3391

標準庫定義了一組操縱符來修改流的格式狀態,包括控制數值的輸入與輸出形式以及控制補白的數量和位置,大多數改變格式狀態的操縱符是設定/復原成對的。當操縱符改變流的格式狀態時,通常改變後的狀態對所有後續io都生效。

預設情況下bool值列印為1或0,我們可以使用boolalpha操縱符使之輸出true或false,使用noboolapha可以取消這種格式狀態。對於輸入流也同樣生效,只有輸入true才能使值變為true,輸入1不行。

int

main()

預設情況下,整型值的輸入輸出使用十進位制,我們可以使用操縱符hex,oct和dec將其改為十六進製制,八進位制,十進位制。

int

main()

輸入十六進製制後輸出十進位制。

int

main()

使用showbase可以顯示進製,uppercase可以控制十六進製制的x是否大寫。

int

main()

預設情況下,浮點數按六位數字精度列印,如果浮點數沒有小數部分則不列印小數點,根據浮點數的值選擇列印成定點十進位制或科學記數法形式,標準庫會選擇一種可讀性更好的格式:非常大和非常小的值列印為科學記數形式,其它值列印為定點十進位制形式。

預設情況下,精度控制列印的數字的總數,浮點值按當前精度捨入而非截斷,使用precision可以獲取當前流的浮點數精度值以及設定流的浮點數精度值。

int

main()

只有當浮點數包含小數部分時才顯式小數點,我們可以通過showpoint始終顯式小數點。

int

main()

通過使用恰當的操縱符,我們可以強制乙個流使用科學記數法,十六進製制記數法,定點十進位制記數法,預設記數法。

int

main()

setw可以指定下乙個輸出的最小空間,如果不滿則用空格填充,類似endl,setw不改變輸出流的內部狀態,它只決定下乙個輸出的大小。

setw預設使用右對齊格式,使用left和right可以修改對齊格式為左對齊和右對齊,使用internal修改對齊格式為符號左對齊,值右對齊。使用setfill可允許指定乙個字元代替預設的空格來補白輸出。

int

main()

-3.14157

-3.14157

-3.14157

- 3.14157

-3.14157********

********-3.14157

-********3.14157

預設情況下,輸入運算子會忽略空白符(空格符,製表符,換行符,換紙符和回車符),使用noskipws會令輸入運算子讀取空白符,而不是跳過他們。

int

main()

system

("pause");

}

c 格式化輸入與輸出

c 要進行格式化輸入與輸出,應該怎麼設定?iampsl qq.com 要弄清這個問題,我們應該先來了解一下c 的格式化輸入與輸出。在基類basic ios中有四個成員變數是用來控制格式化的,狀態標誌字,域寬,填充字元,輸出精度。也就是說c 中乙個流在進行輸入與輸出時,它會去查詢這四個成員變數,接著它...

格式化輸入與輸出

格式化輸入與輸出 printf 格式控制 輸出列表 1 格式控制 是用雙撇號括起來的字串,通常也叫 轉換控制字串 它包括兩種資訊。a 格式說明。格式說明由 和格式字元組成,如 d f 等,作用是將輸出的資料轉換成指定的格式輸出。格式說明總是由 字元開始。b 普通字元。普通字元即需要原樣輸出的字元。2...

C的格式化輸入與輸出

天天用的老朋友了,但是,平時都是用到哪,學到哪,具體怎麼用的6呢?flag含義 左對齊 配合width使用,預設右對齊 在前面放 或 強制輸出 space 正數留空 00填充 width 或 prec 含義number 最小字元數 整個輸出,包括小數點 下乙個引數是字元數 number 小數點之後位...