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"