うさぎのしっぽ

プログラミングとか。備忘録として使ってるブログです。あとは趣味少し。 間違いなどありましたらご指摘ください(・3・)

C言語でのシーク

C++ばっかでCをほとんど使ったことないので苦戦。

 

int fseek(FILE *fp, long offset, int origin);

FILE *fp : FILEポインタ

long offset: 移動バイト数

int origin : SEEK_SET (ファイルの先頭)

      SEEK_CUR (ファイルの現在位置)

      SEEK_END (ファイルの終端)

 

sizeof( データ型)

データ型が何バイトかを返す

 

「sizeof(データ型)を利用してデータの大きさがわかる!」ってのはすぐ見つかるけれど、戻り値の単位(bitなのかbyteなのか)がなかなか見つからなかった。

 

これで合ってるのかなあ…

  //startnumまで移動

  if(fseek(infp, startnum*sizeof(short), SEEK_SET))//成功すると0が返る

    return 0;//失敗した場合は終了