学习笔记18-C语言-文件
生活随笔
收集整理的這篇文章主要介紹了
学习笔记18-C语言-文件
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
文件的分類:
文本文件: 存儲(chǔ)的是ASCII碼值的二進(jìn)制 二進(jìn)制文件: 存儲(chǔ)的是數(shù)據(jù)的補(bǔ)碼文件IO:
FILE *fopen(const char *path, const char *mode); 功能:打開(kāi)或者創(chuàng)建文件 path:文件的路徑 mode:打開(kāi)模式r 以只讀權(quán)限打開(kāi)文件,如果該文件不存在則打開(kāi)失敗r+ 在r的基礎(chǔ)上,增加寫(xiě)權(quán)限w 以只寫(xiě)權(quán)限打開(kāi)文件,如果文件不存在則創(chuàng)建,如果文件存在則會(huì)清空w+ 在w的基礎(chǔ)上,增加讀權(quán)限a 以追加的形式打開(kāi)文件,如果文件不存在則新建,如果文件存在則不清空,新寫(xiě)入的數(shù)據(jù)會(huì)在文件的文件。a+ 在a的基礎(chǔ)上,增加讀權(quán)限注意:以上方式打開(kāi)文件都是以文本文件形式來(lái)操作文件的,在它們的基礎(chǔ)加上b表示以二進(jìn)制形式操作文件。rb wb wb+返回值:結(jié)構(gòu)指針,不需要關(guān)心它的成員,只需要知道它是操作該文件的唯一憑證。二進(jìn)制形式的讀寫(xiě):【人無(wú)法直接讀懂文件】 size_t fwrite(const void *ptr,size_t size,size_t nmemb,FILE *stream); 功能:從內(nèi)存中把數(shù)據(jù)寫(xiě)入到文件中 ptr:要寫(xiě)入的內(nèi)存的首地址 size:一次寫(xiě)入的字節(jié)數(shù) nmemb:寫(xiě)入多少次 FILE*:文件指針,fopen的返回值 返回值:成功寫(xiě)入的次數(shù)size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream); 功能:從文件中讀取數(shù)據(jù)到內(nèi)存中 ptr:要讀取到內(nèi)存的首地址 size:每次讀取多少個(gè)字節(jié) nmemb:讀取多少次 FILE*:文件指針 返回值:成功讀取到的次數(shù)文本形式的讀寫(xiě)【人能直接看懂文件】 int fprintf(FILE *stream, const char *format, ...); 功能:以文本形式寫(xiě)入數(shù)據(jù)到文件中 stream:要寫(xiě)入的文件指針 format:占位符... ...:變量列表 返回值:int fscanf(FILE *stream, const char *format, ...); 功能:以文本形式從文件中讀取數(shù)據(jù)到內(nèi)存中 stream:要寫(xiě)入的文件指針 format:占位符... ...:變量列表的地址 返回值:成功讀取到的變量的個(gè)數(shù)int fclose(FILE *fp); 功能:關(guān)閉文件(因?yàn)橛芯彌_區(qū)的存在,想要立即寫(xiě)入到文件,關(guān)閉一下文件)文件位置指針:每個(gè)打開(kāi)的文件都會(huì)有一個(gè)文件位置指針指向要讀寫(xiě)的位置,它會(huì)隨著文件的讀寫(xiě)而移動(dòng),以r、r+、w、w+模式打開(kāi)文件,文件位置指針會(huì)在文件的開(kāi)頭,以a\a+打開(kāi),文件位置指針會(huì)在文件的末尾int fseek(FILE *stream, long offset, int whence);功能:設(shè)置文件的位置指針stream:要設(shè)置的文件指針offset:偏移值whence:基礎(chǔ)位置SEEK_SET:文件的開(kāi)頭SEEK_CUR: 文件指針的當(dāng)前位置SEEK_END: 文件的末尾返回值:成功返回0,失敗返回-1void rewind(FILE *stream);功能:把文件位置指針設(shè)置到文件開(kāi)頭long ftell(FILE *stream);功能:獲取文件位置指針當(dāng)前所在的位置返回:所在第幾個(gè)字節(jié)int feof(FILE *stream);功能:檢查文件位置指針是否已經(jīng)到達(dá)末尾返回值:如果到達(dá)末尾返回非零值char *fgets(char *s, int size, FILE *stream);功能:從文件中讀取一行字符串int fputs(const char *s, FILE *stream);功能:寫(xiě)入一個(gè)字符串到文件中,會(huì)自動(dòng)添加\n在末尾int fgetc(FILE *stream);功能:從文件中讀取一個(gè)字符int fputc(int c, FILE *stream);功能:寫(xiě)入一個(gè)字符到文件中int remove(const char *pathname);功能:刪除一個(gè)文件返回值:成功返回0,失敗返回-1int rename(const char *oldpath, const char *newpath);功能:重命名文件返回值:成功返回0,失敗返回-1main函數(shù)的參數(shù):是為了獲取命令行的參數(shù) argc 代表了命令行參數(shù)的總個(gè)數(shù)argv 代表了每個(gè)參數(shù)字符串的首地址總結(jié)
以上是生活随笔為你收集整理的学习笔记18-C语言-文件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 交行消愁金多久出额度?提高资质是关键
- 下一篇: GitHub删除已有文件和提交文件的方法