
C言語にはファイルサイズを知るための関数はありません。
ファイルサイズを知るには、ファイルを開いてからファイルポインタを移動して求めます。
fpos_t はデータのサイズを意味する変数で、実態は符号なしの整数値です。int に変えてもさほど問題はありません。fpos_t GetFileSize(const char *FileName[]) { fpos_t fsize = 0; FILE *fp = fopen(FileName,"rb"); /* ファイルサイズを調査 */ fseek(fp,0,SEEK_END); fgetpos(fp,&fsize); fclose(fp); return fsize; }
fpos_t fsize = 0; fpos_t fsizeb = fseek(fp,0,SEEK_END); fgetpos(fp,&fsize); fseek(fp,fsizeb,SEEK_SET);