20131025【C言語】ファイルから特定の位置の数字を読み込む

お題

ファイルから特定の位置の数字を読み込む

 

プログラム概要

ファイルを読み込み数字をユーザに入力させて、

その順番の値を表示する。

 

(ファイルの中身は、11 22 33のようになっており、バイナリファイルとする。)

 

ソース

#include <stdio.h>

#include <stdlib.h>

 

int main(int argc, char *argv[])

{

FILE *fp;

int i, num;

 

/* Check arguments */

if *1 == NULL) {

fprintf(stderr, "Cannot open %s.\n", argv[1]);

exit(1);

}

 

printf("Please input number you want to search: ");

scanf("%d", &i);

 

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

if (fread(&num, sizeof num, 1, fp) != 1) {

fprintf(stderr, "Read Error.\n");

exit(1);

}

 

printf("Number is %d\n", num);

 

return 0;

}

 

実行結果

省略

*1:fp = fopen(argv[1], "rb"