Last Update 2012/07/05
ファイル・ポインタで参照されるストリーム内の現在位置を取り出します。
戻り値1 = fgetpos( 引数1 , 引数2 )
戻り値1 :
int
実行が成功した場合 : 0
エラーが発生した場合 : 0以外
引数1 :
FILE *
ファイル・ポインタ
引数2 :
fpos_t *
現在位置を記憶する変数へのポインタ
(例)
#include <stdio.h>
int main()
{
char s[20] = "123456789";
FILE *fp;
char s1[10], s2[10];
fpos_t fpt;
int n_err = 0;
fp = fopen("test_fopen_w.txt", "w");
fputs(s, fp);
fclose(fp);
fp = fopen("test_fopen_w.txt", "r");
int n = fscanf(fp, "%2s%3s", s1, s2);
printf("入力項目数 %d --- 入力内容 : %s, %s\n", n, s1, s2);
n_err = fgetpos(fp, &fpt);
fclose(fp);
fp = fopen("test_fopen_w.txt", "r");
n_err = fsetpos(fp, &fpt);
n = fscanf(fp, "%3s", s1);
printf("前回の終了位置から読み込み\n入力項目数 %d --- 入力内容 : %s\n", n, s1);
fclose(fp);
return 0;
}
実行結果
入力項目数 2 --- 入力内容 : 12, 345
前回の終了位置から読み込み
入力項目数 1 --- 入力内容 : 678