第 12 章 標(biāo)準(zhǔn)輸入輸出庫(kù)
問(wèn)題列表:
12.1 這樣的代碼有什么問(wèn)題?char c; while((c = getchar()) != EOF) ...
12.2 我有個(gè)讀取直到EOF 的簡(jiǎn)單程序, 但是我如何才能在鍵盤上輸入那個(gè)“EOF” 呢?
12.3 為什么這些代碼while(!feof(infp)) { fgets(buf, MAXLINE,infp); fputs(buf, outfp); } 把最后一行復(fù)制了兩遍?
12.4 我的程序的屏幕提示和中間輸出有時(shí)顯示在屏幕上, 尤其是當(dāng)我用管道向另一個(gè)程序輸出的時(shí)候。
12.5 我怎樣不等待回車鍵一次輸入一個(gè)字符?
12.6 我如何在printf 的格式串中輸出一個(gè)’%’?我試過(guò)\%, 但是不行。
12.7 有人告訴我在printf 中使用%lf 不正確。那么, 如果scanf() 需要%lf, 怎么可以用在printf() 中用%f 輸出雙精度數(shù)呢?
12.8 對(duì)于size t 那樣的類型定義, 當(dāng)我不知道它到底是long 還是其它類型的時(shí)候, 我應(yīng)該使用什么樣的printf 格式呢?
12.9 我如何用printf 實(shí)現(xiàn)可變的域?qū)挾?就是說(shuō), 我想在運(yùn)行時(shí)確定寬度而不是使用%8d?
12.10 如何輸出在千位上用逗號(hào)隔開的數(shù)字?金額數(shù)字呢?
12.11 為什么scanf("%d", i) 調(diào)用不行?
12.12 為什么char s[30]; scanf("%s", s); 不用& 也可以?
12.13 為什么這些代碼double d; scanf("%f", &d); 不行?
12.14 怎樣在scanf() 格式串中指定可變的寬度?
12.15 當(dāng)我用“%d\n” 調(diào)用scanf 從鍵盤讀取數(shù)字的時(shí)候, 好像要多輸入一行函數(shù)才返回。
12.16 我用scanf %d 讀取一個(gè)數(shù)字, 然后再用gets() 讀取字符串, 但是編譯器好像跳過(guò)了gets() 調(diào)用!
12.17 我發(fā)現(xiàn)如果堅(jiān)持檢查返回值以確保用戶輸入的是我期待的數(shù)值, 則scanf() 的使用會(huì)安全很多, 但有的時(shí)候好像會(huì)陷入無(wú)限循環(huán)。
12.18 為什么大家都說(shuō)不要使用scanf()?那我該用什么來(lái)代替呢?
12.19 我怎樣才知道對(duì)于任意的sprintf 調(diào)用需要多大的目標(biāo)緩沖區(qū)?怎樣才能避免sprintf() 目標(biāo)緩沖區(qū)溢出?
12.20 為什么大家都說(shuō)不要使用gets()?
12.21 為什么調(diào)用printf() 之后errno 內(nèi)有ENOTTY?
12.22 fgetops/fsetops 和ftell/fseek 之間有什么區(qū)別?fgetops() 和fsetops() 到底有什么用處?
12.23 如何清除多余的輸入, 以防止在下一個(gè)提示符下讀入?fflush(stdin)可以嗎?
12.24 既然fflush() 不能, 那么怎樣才能清除輸入呢?
12.25 對(duì)某些路徑文件名調(diào)用fopen() 總是失敗。
12.26 我想用“r+” 打開一個(gè)文件, 讀出一個(gè)字符串, 修改之后再寫入, 從而就地更新一個(gè)文件?墒沁@樣不行。
12.27 怎樣在程序里把stdin 或stdout 重定向到文件?
12.28 一旦使用freopen() 之后, 怎樣才能恢復(fù)原來(lái)的stdout (或stdin)?
12.29 怎樣同時(shí)向兩個(gè)地方輸出, 如同時(shí)輸出到屏幕和文件?
12.30 怎樣正確的讀取二進(jìn)制文件?我有時(shí)看到0x0a 和0x0d 混淆了, 而且如果數(shù)據(jù)中包含0x1a 的話, 我好像會(huì)提前遇到EOF。
相關(guān)推薦:2010年9月計(jì)算機(jī)等級(jí)考試成績(jī)查詢時(shí)間匯總北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |