Cライブラリ関数 - FGETPOS()
説明
Cライブラリ関数は、FGETPOS(ファイル*ストリーム、fpos_tのint型 * posの)現在のファイル位置のフローストリームを取得し、およびPOSに書き込みます。
声明
ここで、()文FGETPOS関数です。
int fgetpos(FILE *stream, fpos_t *pos)
パラメータ
- ストリーム-これは、オブジェクトへのポインタをファイルへのポインタ、オブジェクト識別子ファイルの流れです。
- POS -これは、オブジェクトfpos_tへのポインタへのポインタです。
戻り値
成功した場合、関数は0を返します。 エラーが発生した場合は、ゼロ以外の値を返します。
例
以下の例は、()関数を使用するFGETPOSを示しています。
#include <stdio.h> int main () { FILE *fp; fpos_t position; fp = fopen("file.txt","w+"); fgetpos(fp, &position); fputs("Hello, World!", fp); fsetpos(fp, &position); fputs("这将覆盖之前的内容", fp); fclose(fp); return(0); }
次のように読み取り、のは、ファイルfile.txtを作成されます上記のプログラムを、コンパイルして実行してみましょう。 その後、私たちは、ファイルへの書き込みポインタの開始時にリセットするfsetpos()関数を使用まず、我々はファイルの初期位置を取得するためにFGETPOS()関数を使用してから、我々は、ハローファイルに世界を書き込み、ファイルは次のテキストで上書きされ!:
这将覆盖之前的内容
それでは、上記のファイルの内容を表示するには、次の手順を使用してみましょう:
#include <stdio.h> int main () { FILE *fp; int c; int n = 0; fp = fopen("file.txt","r"); while(1) { c = fgetc(fp); if( feof(fp) ) { break ; } printf("%c", c); } fclose(fp); return(0); }