C言語におけるポインタの使用方法

C言語では、カーソルは通常、ファイルの読み書き操作に使用されます。カーソルとはファイル内部の位置を指すポインタで、ファイルの任意の位置を指すことが可能で、これによりファイルのランダムアクセスが可能になります。

C言語では、カーソル位置の移動にはfseek関数を使用します。fseek関数のプロトタイプは次のとおりです。

int fseek(FILE *stream, long int offset, int origin);

ストリームはファイルに対するポインタであり、オフセットはカーソルを移動する距離を指定、原点は以下3つの定数のいずれか

  1. ファイルの先頭からのオフセット量。
  2. SEEK_CUR: オフセットは現在のカーソル位置から計算されます。
  3. ファイルの終わりからオフセットを計算します。

たとえば、ファイルの先頭にカーソルを配置するには、次のコードを使用できます。

fseek(file, 0, SEEK_SET);

カーソルを10バイト進めるには、次のようなコードを使用できます。

fseek(file, -10, SEEK_CUR);

カーソルをファイルの末尾に移動するには、次のコードを使用します。

fseek(file, 0, SEEK_END);

また、ftell関数を使って現在のカーソルの位置を取得することもできます。ftell関数のプロトタイプは以下の通りです。

long int ftell(FILE *stream);

現在位置を取得するには、次のようなコードを利用できます。

long int position = ftell(file);

以上の方法により、カーソルを使用してファイルを柔軟に読み書きできます。

bannerAds