未格式化的輸入 輸出操作

2021-07-02 04:50:53 字數 600 閱讀 3972

標準庫提供了一組低層操作,支援未格式化io(unformatted io)。這些操作允許我們將乙個流當作乙個無解釋的位元組序列來處理。

一般情況下,在讀取下乙個值之前,標準庫保證我們可以退回最多乙個值。即,標準庫不保證在中間不進行讀取操作的情況下能連續呼叫putback或unget。

確定讀取了多少個字元

某些操作從輸入讀取未知個數的位元組。我們可以呼叫gcount來確定最後乙個未格式化輸入操作讀取了多少個字元。應該在任何後續未格式化輸入操作之前呼叫gcount。特別是,將字元退回流的單字元操作也屬於未格式輸入操作。如果在呼叫gcount之前呼叫了peek、unget或putback,則gcount的返回值是0。

將字元放回輸入流

1. peek返回輸入流中下乙個字元的副本,但不會將它從流中刪除,peek返回的值仍然留在流中。

2. unget使用輸入流向後移動,從而最後讀取的值又回到流中。即使我們不知道最後從流中讀取什麼值,仍然可以呼叫unget。

3.putback是更特殊版本的unget;它退回從流中讀取的最後乙個值,但它接受乙個引數,此引數必須與最後讀取的值相同。

未格式化的輸入 輸出操作

單位元組 io 操作 說明is.get ch 從 istream is 讀取下乙個位元組存入字元 ch 中,返回 is os.put ch 將字元 ch 輸出到 ostream os,返回 os is.get 將 is 的下乙個位元組作為 int 返回 is.putback ch 將字元 ch 放回...

C 格式化輸入輸出操作

操作符 含義輸入輸出 dec以十進位制顯示 預設設定 i ohex 以十六進製制顯示 i ooct 以八進位制顯示 i osetbase int n 設定數制基數為n 0,8,10,16 0表示預設 十進位制 ws提取空白字元 iends 插入空字元 oendl 插入換行符,然後重新整理ostrea...

格式化輸入 輸出

scanf 函式和 printf 函式是c語言程式設計中使用最頻繁的兩個函式,他們用來格式化輸入和輸出。printf 函式 printf 格式串,表示式1,表示式2 格式串包含普通字元和轉換說明 轉換說明以 字元開頭 轉換說明可以用 m.px格式或 m.px格式 m和p都是整數常量,而x是字母。m和...