• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            洗塵齋

            三懸明鏡垂鴻韻,九撩清泉洗塵心

            常用鏈接

            統計

            最新評論

            標準輸入輸出的問題

                先看下面一個小程序:

            int main(int argc, _TCHAR* argv[])
            {
                    FILE 
            *fp=fopen("1.txt","r+");
                    fputc('x',fp);
                    fputc(
            'x',fp);
                    fputc(
            'x',fp);
                   
            return 0;
            }
                1.txt文件內容為abcdefg,調用函數之后為axxxefg,恩,正確


            int main(int argc, _TCHAR* argv[])
            {
                    FILE 
            *fp=fopen("1.txt","rb+");
                    char c=fgetc(fp);
                    fputc('x',fp);
                    fputc(
            'x',fp);
                    fputc(
            'x',fp);
               
                return 0;
            }
                而上面的這個程序只是加了一句fgetc,調用后卻失去了作用,文件內容沒有發生變化,仍然為abcdefg,為什么呢?(該問題在Linux下已不存在)
                《Unix環境高級編程》在使用讀寫方式打開文件時(type中的+號),輸出的后面不能直接跟輸入,輸入的后面也不能直接跟輸出,否則可能會出錯。如果需要輸出輸入相連,則中間 需調用fflush,fseek,fsetpos或rewind等操作。
                既然這樣,那我們試一下,看看能不能解決問題,在上面代碼中fgetc和fputc中間加入
                    fpos_t pos;
                    fgetpos(fp,
            &pos);
                    fsetpos(fp,
            &pos);
            之后,運行程序,果真可以解決問題。
                C語言的標準I/O庫函數由于使用緩存的原因,在使用時可能出現各種各樣的問題,尤其是在那種即時性比較強的I/O中,使用時要慎重。盡量使用其他的I/O函數代替之。



            posted on 2007-10-17 19:06 芥之舟 閱讀(824) 評論(0)  編輯 收藏 引用 所屬分類: C/C++

            亚洲第一极品精品无码久久| 久久人与动人物a级毛片| jizzjizz国产精品久久| 国产精品久久久福利| 久久精品国产99久久久香蕉| 久久婷婷是五月综合色狠狠| 久久国产精品无码一区二区三区| 久久99精品国产99久久6男男| 久久青青草原精品国产软件| 伊人久久大香线蕉AV色婷婷色| 久久本道伊人久久| 久久AV高潮AV无码AV| .精品久久久麻豆国产精品 | 亚洲国产综合久久天堂| 久久香蕉超碰97国产精品| 久久青青草原精品国产软件| av无码久久久久不卡免费网站| 亚州日韩精品专区久久久| 久久久精品免费国产四虎| 亚洲精品乱码久久久久久久久久久久 | 久久www免费人成看国产片| 色综合久久无码中文字幕| 精品久久久久久国产免费了| 久久99热只有频精品8| 无码任你躁久久久久久久| 久久久久久久综合日本亚洲| 人妻精品久久久久中文字幕69| 亚洲色欲久久久久综合网| 国产精品成人99久久久久 | 99久久国产热无码精品免费久久久久 | 狠狠色丁香久久婷婷综合_中| 草草久久久无码国产专区| 久久亚洲精品成人av无码网站| 麻豆AV一区二区三区久久| 亚洲午夜久久久影院| 中文成人久久久久影院免费观看| 久久国产福利免费| 久久久久国产精品麻豆AR影院| 久久福利片| 久久久久久国产a免费观看黄色大片 | 国产精品久久久久a影院|