ファイルのバイト数を数えるCプログラム
概要
- 引数に指定したファイルの中身が何バイトあるかをカウントするCのプログラム
- ファイルがバイナリでもテキストでもOK
プログラム
#include<stdlib.h> #include<stdio.h> int main(int argc,char *argv[]) { FILE *fp; unsigned bite = 0; if ( (fp = fopen(argv[1],"rb")) == NULL) { printf("ファイルを開けません\n"); exit(1); } while(! feof(fp)) { fgetc(fp); if(!feof(fp)) bite++; } printf("ファイルの内容は %u バイト\n",bite); return 0; }
使用例
ファイルの中身を確認
$ cat hoge.txt hoge
実行
$ ./a.out hoge.txt ファイルの中身は5バイト
4文字プラス改行文字?で5バイトみたいです
確認
ファイルのメモリ上のスペース数を調べるlinuxコマンド du を使う
-bオプションで単位はバイトになる
$ du -b hoge.txt 5 hoge.txt
合ってるみたいですね
もちろん
使えるならduを使ったほうがいいですね。