言續(xù)4(比特))
memecpy(void*dest,const void* source,siez_t num);函數(shù)memcpy(arr2,arr1,10);從數(shù)組arr1拷貝10個(gè)字符到arr2空間內(nèi)。一、為什么使用文件使數(shù)據(jù)的持久化。二、什么是文件磁盤(pán)上的文件是文件程序文件、數(shù)據(jù)文件。三、程序文件后綴為.c目標(biāo)文件后綴.obj)可執(zhí)行程序后綴我i.exe).四、數(shù)據(jù)文件程序運(yùn)行時(shí)讀寫(xiě)的數(shù)據(jù)。五、文件名文件的唯一標(biāo)識(shí)符以便用戶(hù)識(shí)別和使用。文件名包含三部分文件路徑文件名主干文件后綴。例如c:\code\test.txt六、文件的打開(kāi)和關(guān)閉1.打開(kāi)文件。2.讀寫(xiě)文件。3.關(guān)閉文件。文件指針指向FILE文件結(jié)構(gòu)體。七、打開(kāi)文件fopen(const char* filename,onst char * mode):文件指針文件打開(kāi)方式#include string.h#includeerrno.hFILE* pf fopen(test.txt,r);if(pfNULL){printf(%s\n,strerror(errno));return 1;}八、字符輸入fgetc,字符輸出函數(shù)fputc,文本輸入fgets,文本輸出fputs,格式化輸入fscanf,格式化輸出fprintf,二進(jìn)制輸入fread,二進(jìn)制輸出fwrite獲取字符串錯(cuò)誤信息strerror(errno);打印字符串信息perror(fopen);print error message九、任何一個(gè)c程序只要運(yùn)行起來(lái)就會(huì)默認(rèn)打開(kāi)三個(gè)流FILE* stdin:標(biāo)準(zhǔn)輸入流鍵盤(pán)FILE* stdout標(biāo)準(zhǔn)輸出流屏幕FILE*stderr標(biāo)準(zhǔn)錯(cuò)誤流屏幕scanf是針對(duì)標(biāo)準(zhǔn)輸入的格式化輸入語(yǔ)句printf是針對(duì)標(biāo)準(zhǔn)輸出 的格式化輸出語(yǔ)句fscanf是針對(duì)所有輸入流的格式化輸入語(yǔ)句fprintf是針對(duì)所有輸出流的格式化輸出語(yǔ)句sscanf從一個(gè)字符串中轉(zhuǎn)化處一個(gè)格式化的數(shù)據(jù)sprintf是一個(gè)把格式化的數(shù)據(jù)轉(zhuǎn)化成字符串十、Savecontact();保存通訊錄{assert(p);十一、rewind函數(shù)讓文件指針的文職回到文件的起始位置。void rewind(FILE* stream);十二、文本文件和二進(jìn)制文件內(nèi)存中的二進(jìn)制形式存儲(chǔ)不加轉(zhuǎn)換輸出到外存就是二進(jìn)制文件如果要求在外存上以ASCII碼的形式存儲(chǔ)則需要在存儲(chǔ)前轉(zhuǎn)化以ASCII字符形式存儲(chǔ)的文件就是文本文件。被錯(cuò)誤使用的feof在文件讀取過(guò)程中應(yīng)用于當(dāng)文件讀取結(jié)束時(shí)候判斷是讀取失敗結(jié)束還是遇到文件尾結(jié)束。十三、文件緩沖區(qū)