初識C語言 fput,fgetc,fputs,fgets,fread,fwrite


 1 fputc()
 2     int fputc(int char, FILE *stream);
 3     //把參數 char 指定的字符(一個無符號字符)寫入到指定的流 stream中,
 4     //並把位置標識符往前移動
 5     //char -- 這是要被寫入的字符。該字符以其對應的 int 值進行傳遞。
 6     //stream -- 這是指向 FILE 對象的指針,該 FILE 對象標識了要被寫入字符的流。
 7 
 8 fgetc()
 9     int fgetc(FILE* fp);     
10     //從fp所指的文件中獲取下一個字符,出錯返回EOF,
11     //否則返回所讀的字符
12 
13 fputs()
14     int fputs(char *s, FILE *stream);
15     //         s---寫入的字符串     strteam---文件指針
16     // 如果寫入成功,則返回非0,此時編譯器默認為返回1
17     // 如果寫入錯誤,則返回EOF
18     
19 fgets()
20     char *fgets(char *buf, int bufsize, FILE *stream);
21     // *buf: 字符型指針,指向用來存儲所得數據的地址。
22     // bufsize: 整型數據,指明存儲數據的大小。
23     // *stream: 文件結構體指針,將要讀取的文件流。
24 
25 fread()
26     size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);
27     // ptr -- 這是指向帶有最小尺寸 size*nmemb 字節的內存塊的指針。
28     // size -- 這是要讀取的每個元素的大小,以字節為單位。
29     // nmemb -- 這是元素的個數,每個元素的大小為 size 字節。
30     // stream -- 這是指向 FILE 對象的指針,該 FILE 對象指定了一個輸入流。
31 //-------------------------------------------------------------------------
32         #include <stdio.h>
33         #include <string.h>
34          
35         int main()
36         {
37            FILE *fp;
38            char c[] = "This is runoob";
39            char buffer[20];
40          
41            /* 打開文件用於讀寫 */
42            fp = fopen("file.txt", "w+");
43          
44            /* 寫入數據到文件 */
45            fwrite(c, strlen(c) + 1, 1, fp);
46          
47            /* 查找文件的開頭 */
48            fseek(fp, SEEK_SET, 0);
49          
50            /* 讀取並顯示數據 */
51            fread(buffer, strlen(c)+1, 1, fp);
52            printf("%s\n", buffer);
53            fclose(fp);
54            
55            return(0);
56         }
57 //---------------------------------------------------------------------
58 
59 fwrite()
60     size_t fwrite(const void* buffer, size_t size, size_t count, FILE* stream);
61     // 向指定的文件中寫入若干數據塊,如成功執行則返回實際寫入的數據塊數目。
62     // 該函數以二進制形式對文件進行操作,不局限於文本文件
63     //返回值:返回實際寫入的數據塊數目
64     // buffer:是一個指針,對fwrite來說,是要獲取數據的地址;
65     // size:要寫入內容的單字節數;
66     // count:要進行寫入size字節的數據項的個數;
67     // stream:目標文件指針;
68     // 返回實際寫入的數據項個數count。
69     
70 
71 fprintf()
72     int fprintf(FILE *stream, const char *format, ...) 
73     // 傳送格式化輸出到一個文件中  
74     // stream -- 這是指向 FILE 對象的指針,該 FILE 對象標識了流。
75     /* format -- 這是 C 字符串,包含了要被寫入到流 stream 中的文本。
76       ... 它可以包含嵌入的 format 標簽,format 標簽可被隨后的附加參數中指定的值替換,
77       ... 並按需求進行格式化。format 標簽屬性是 %[flags][width][.precision][length]specifier    */
78     
79 
80 fscanf()    
81     int fscanf(FILE *stream, const char *format, ...)
82     // stream -- 這是指向 FILE 對象的指針,該 FILE 對象標識了流。
83     // format -- 這是 C 字符串,包含了以下各項中的一個或多個:空格字符、非空格字符 和 format 說明符。
84     // format 說明符形式為 [=%[*][width][modifiers]type=]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM