12.13 為什麼這些代碼 double d; scanf("%f", &d); 不行?
12.14 怎樣在 scanf() 格式串中指定可變的寬度?
12.15 當我用 “%d” 調用 scanf 從鍵盤讀取數字的時候, 好像要多輸入 一行函數才傳回。
12.16 我用 scanf %d 讀取一個數字, 然後再用 gets() 讀取字元串, 但是 編譯器好像跳過了 gets() 調用!
12.17 我發現如果堅持檢查傳回值以確定使用者輸入的是我期待的數值, 則 scanf() 的使用會安全很多, 但有的時候好像會陷入無限循環。
12.18 為什麼大家都說不要使用 scanf()?那我該用什麼來代替呢?
12.19 我怎樣才知道對于任意的 sprintf 調用需要多大的目标緩沖區?怎 樣才能避免 sprintf() 目标緩沖區溢出?
12.20 為什麼大家都說不要使用 gets()?
12.21 為什麼調用 printf() 之後 errno 内有 ENOTTY?
12.22 fgetops/fsetops 和 ftell/fseek 之間有什麼差別? fgetops() 和 fsetops() 到底有什麼用處?
12.23 如何清除多餘的輸入, 以防止在下一個提示符下讀入?fflush(stdin)可以嗎?
12.24 既然 fflush() 不能, 那麼怎樣才能清除輸入呢?
12.25 對某些路徑檔案名調用 fopen() 總是失敗。
12.26 我想用 “r+” 打開一個檔案, 讀出一個字元串, 修改之後再寫入, 從 而就地更新一個檔案。可是這樣不行。
12.27 怎樣在程式裡把 stdin 或 stdout 重定向到檔案?
12.28 一旦使用 freopen() 之後, 怎樣才能恢複原來的 stdout (或 stdin)?
12.29 怎樣同時向兩個地方輸出, 如同時輸出到螢幕和檔案?
12.30 怎樣正确的讀取二進制檔案?我有時看到 0x0a 和 0x0d 混淆了, 而且如果資料中包含 0x1a 的話, 我好像會提前遇到 EOF。