C語言fread()函數:讀文件函數(從文件流讀取數據)
頭文件:
#include <stdio.h>
定義函數:
size_t fread(void * ptr, size_t size, size_t nmemb, FILE * stream);
函數說明:fread()用來從文件流中讀取數據.
參數stream 為已打開的文件指針, 參數ptr 指向欲存放讀取進來的數據空間, 讀取的字符數以參數size*nmemb 來決定. Fread()會返回實際讀取到的nmemb 數目, 如果此值比參數nmemb 來得小, 則代表可能讀到了文件的尾或有錯誤發生, 這時必須用feof()或ferror()來決定發生什么情況.
返回值:返回實際讀取到的nmemb 數目。
范例
#include <stdio.h>#define nmemb 3struct test{ char name[20]; int size;} s[nmemb];main(){ FILE * stream; int i; stream = fopen("/tmp/fwrite", "r"); fread(s, sizeof(struct test), nmemb, stream); fclose(stream); for(i = 0; i < nmemb; i++) printf("name[%d]=%-20s:size[%d]=%d/n", i, s[i].name, i, s[i].size);}
執行
name[0]=Linux! size[0]=6name[1]=FreeBSD! size[1]=8name[2]=Windows2000 size[2]=11
C語言feof()函數:檢查文件流是否讀到了文件尾
頭文件:
#include <stdio.h>
定義函數:
int feof(FILE * stream);
函數說明:feof()用來偵測是否讀取到了文件尾, 尾數stream 為fopen()所返回之文件指針. 如果已到文件尾則返回非零值, 其他情況返回0.
返回值:返回非零值代表已到達文件尾.
新聞熱點
疑難解答
圖片精選