fread("rb")で特定位置から読み込みたい

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
bonbo

fread("rb")で特定位置から読み込みたい

#1

投稿記事 by bonbo » 12年前

早速ですが質問させていただきます。

トピック名だと分かりにくいのですが、具体的にやりたいことは

コード:

FILE fp;
fp = fopen("test.tst", "wb");
for(int i=0;i<100;i++){
fwrite(&i,sizeof(i),1,fp);
}
fclose(fp);
このように100このint型を記録したファイルtest.tstから

コード:

FILE fp;
fp = fopen("test.tst", "rb");
// ここで64だけを読み込みたい
/*
for(int i=0;i<100;i++){
fread(&i,sizeof(i),1,fp);
}
のようにすれば読み込むことはできるが
これだとほかに99こを読み込む無駄な処理がある。
これをなんとかしたい。
*/
fclose(fp);
1つだけを読み込みたいということです。
説明が分かりづらくてすみません。

環境依存はないと思うのですが、一応
環境はXcode4.6.3とVS2010
ですよろしくおねがいします。

アバター
h2so5
副管理人
記事: 2212
登録日時: 15年前
住所: 東京
連絡を取る:

Re: fread("rb")で特定位置から読み込みたい

#2

投稿記事 by h2so5 » 12年前

C言語の入門書の一つくらいは持っても損はないですよ。
こんなことでいちいち質問しないで済むと思います。

コード:

fseek(fp, sizeof(i) * 64, SEEK_SET);

bonbo

Re: fread("rb")で特定位置から読み込みたい

#3

投稿記事 by bonbo » 12年前

>h2so5さん
ありがとうございます。
できました。
入門書にも載っていました。すみません…

閉鎖

“C言語何でも質問掲示板” へ戻る