• <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>
            [[轉(zhuǎn)帖]]C語言常用文件處理函數(shù)
            在實(shí)際的編程中,經(jīng)常需要進(jìn)行文件讀寫的操作。下面是筆者在學(xué)習(xí)中記錄的一些常有文件處理函數(shù)。一、文件的打開與關(guān)閉
            1、fopen
                調(diào)用方式:
                FILE *fp;
                fp=fopen(文件名,使用文件方式);

                說明:
                (1)、使用文件方式主要有:只讀(r)、只寫(w)、追加(a),還有配合"+"使用的方式,如r+、w+、a+;
                (2)、默認(rèn)打開的文件為文本文件,用't'表示,可以省略。如果打開二進(jìn)制的文件,則使用'b'。例如:r、rt、rb等。
                (3)、如果不能實(shí)現(xiàn)打開的任務(wù),則函數(shù)返回NULL值。
            2、fclose
                調(diào)用方式:
                FILE *fp;
                fclose(fp);

                說明:
                (1)、打開文件后,必須要養(yǎng)成關(guān)閉文件的好習(xí)慣。
                (2)、如果關(guān)閉文件出錯,函數(shù)返回非零值,否則返回0.可以用ferror函數(shù)檢查是否出錯。

            二、文件的讀寫
            1、fputc
                調(diào)用方式:
                FILE *fp;
                char c;
                fputc(c,fp);

                說明:
                (1)、fputc向文件寫入一個(gè)字符。   
                (2)、輸出成功則返回值就是輸出的字符,如果失敗則返回一個(gè)EOF。
            2、fgetc
                調(diào)用方式:
                FILE *fp;
                char c;
                c=fgetc(fp);
                
                說明:
                (1)、fgetc向文件讀取一個(gè)字符。
                (2)、函數(shù)返回讀取的字符,如果遇到文件結(jié)尾,則返回EOF。
                (3)、建議使用feof函數(shù)來判斷是否文件結(jié)束。如果文件結(jié)束,函數(shù)feof返回值為1,否則為0。
            3、fread
                調(diào)用方式:
                fread(buffer,size,count,fp);
                
                說明:
                (1)、buffer:是一個(gè)指針。對于fread來說明,它是讀入數(shù)據(jù)的存放地址。對fwrite來說,是要輸出數(shù)據(jù)的地址。
                (2)、size:要讀寫的字節(jié)數(shù)。可以使用sizeof來獲得字節(jié)長度。
                (3)、count:要進(jìn)行讀寫多少個(gè)size字的數(shù)據(jù)項(xiàng)。
                (4)、fp:文件指針。
                (5)、如果fread或fwrite調(diào)用成功,則函數(shù)返回值為count的值。
            4、fwrite
                見fread說明。
            5、fprintf和fscanf
                調(diào)用方式:
                fprintf(文件指針,格式字符串,輸出列表);
                fscanf(文件指針,格式字符串,輸入列表);

                說明:
                (1)、在內(nèi)存與磁盤頻繁交換數(shù)據(jù)的情況下,建議采用fread和fwrite實(shí)現(xiàn)。
            三、文件的定位
            1、rewind
                調(diào)用方式:
                FILE *fp;
                rewind(fp);   
                說明:
                (1)、rewind使文件的位置指針重新定位于文件開頭。

            2、fseek   
                調(diào)用方式:
                fseek(文件類型指針,位移量,起始點(diǎn));
                說明:
                (1)、起始點(diǎn)用0、1、2代替,分別表示文件開始、文件當(dāng)前位置、文件末尾。
                (2)、位移量指起始點(diǎn)為基點(diǎn),向前移動的字節(jié)數(shù)。一般為long型。
                (3)、fseek常用二進(jìn)制文件,可以實(shí)現(xiàn)隨機(jī)讀寫。
            3、ftell
                 調(diào)用方式:
                FILE *fp;
                long i;
                i=ftell(fp);
                說明:
                (1)、函數(shù)返回文件當(dāng)前位置,如果調(diào)用出錯則返回值為-1L。
            四、出錯的檢測
            1、ferror
                調(diào)用方式:
                FILE *fp;
                ferror(fp);
                說明:
                (1)、返回值為0,表示未出錯,返回值為1,表示出錯。
                (2)、同一個(gè)文件每一次調(diào)用輸入輸出函數(shù),均產(chǎn)生一個(gè)新 的ferror函數(shù)值。
                (3)、在執(zhí)行fopen函數(shù)時(shí),ferror函數(shù)的初始值自動置為0。
            2、clearerr
                調(diào)用方式:
                FILE *fp;
                clearerr(fp);
                說明:
                (1):使文件錯誤標(biāo)志和文件結(jié)束標(biāo)志為0.
            Posted on 2005-12-02 14:27 艾凡赫 閱讀(4319) 評論(0)  編輯 收藏 引用 所屬分類: C語言
            国产午夜久久影院| 亚洲乱码中文字幕久久孕妇黑人 | 精品久久香蕉国产线看观看亚洲| 久久久久久国产精品无码超碰| 国产成人精品久久一区二区三区 | 91精品观看91久久久久久| 久久亚洲国产成人精品无码区| 亚洲色欲久久久综合网东京热| 麻豆精品久久精品色综合| 亚洲国产成人久久综合碰| 久久精品国产精品亚洲精品| 久久久久久精品久久久久| 97精品国产97久久久久久免费| 久久天天躁夜夜躁狠狠躁2022| 亚洲国产精品婷婷久久| 久久亚洲欧美国产精品| 伊人色综合九久久天天蜜桃| 国产精品成人99久久久久 | 伊人久久亚洲综合影院| 国产激情久久久久影院| 国产成人久久激情91 | 国产成人久久精品麻豆一区| 欧美亚洲国产精品久久高清| 精品久久人人爽天天玩人人妻| 狠狠色丁香久久婷婷综合五月| 久久久久亚洲精品日久生情 | 亚洲色大成网站www久久九| 青青草原综合久久大伊人导航 | 69SEX久久精品国产麻豆| 久久久久久精品无码人妻| 亚洲欧洲久久久精品| 久久久久亚洲av毛片大| 国产精品热久久毛片| 久久99热这里只有精品国产| avtt天堂网久久精品| 久久亚洲欧美国产精品| www性久久久com| 77777亚洲午夜久久多喷| 91精品国产综合久久精品| 国产精品久久永久免费| 亚洲欧美日韩精品久久|