fgetpos

提供: RAD Studio
移動先: 案内検索

stdio.h:インデックス への移動


ヘッダーファイル

stdio.h

カテゴリ

入出力ルーチン

プロトタイプ

int fgetpos(FILE *stream, fpos_t *pos);

説明

現在のファイルポインタを取得します。

fgetpos は,指定されたストリームに関連付けられたファイルポインタの位置を pos が指す場所に格納します。この正確な値は重要ではありません。この後で fsetpos の呼び出しのパラメータとして使用するのでない限り,この値に意味はありません。

戻り値

成功した場合,fgetpos は 0 を返します。失敗した場合は 0 以外の値を返し,グローバル変数 errno に次の値を設定します。

EBADF

不正なファイル番号

EINVAL

不正な数値





 #include <stdlib.h>
 #include <stdio.h>
 void showpos(FILE *stream);
 int main(void)
 {
    FILE *stream;
    fpos_t filepos;
    /* 更新用にファイルを開きます */
    stream = fopen("DUMMY.FIL", "w+");
    /* ファイルポインタの位置を保存します */
    fgetpos(stream, &filepos);
    /* ファイルにデータを書き込みます */
    fprintf(stream, "This is a test");
    /* 現在のファイル位置を表示します */
    showpos(stream);
    /* 新しいファイル位置を設定して表示します */
    if (fsetpos(stream, &filepos) == 0)
      showpos(stream);
    else
    {
       fprintf(stderr, "Error setting file pointer.\n");
       exit(1);
    }
    /* ファイルを閉じます */
    fclose(stream);
    return 0;
 }
 void showpos(FILE *stream)
 {
    fpos_t pos;
    /* ストリームの現在のファイルポインタの
       位置を表示します */
    fgetpos(stream, &pos);
    printf("File position: %ld\n", pos);
 }



移植性



POSIX Win32 ANSI C ANSI C++

+

+

+

+