Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

C / C ++のfseek()


C言語のfseek()は、ファイルポインタを特定の位置に移動するために使用されます。オフセットとストリームはポインタの宛先であり、関数パラメータで指定されます。成功すると、ゼロを返します。成功しなかった場合は、ゼロ以外の値を返します。

これがC言語でのfseek()の構文です

int fseek(FILE *stream, long int offset, int whence)

fseek()で使用されるパラメータは次のとおりです

  • ストリーム- これは、ストリームを識別するためのポインタです。

  • オフセット- これは、その位置からのバイト数です。

  • いつ- これは、オフセットが追加される位置です。

whenceは、次の定数のいずれかで指定されます。

  • SEEK_END − ファイルの終わり。

  • SEEK_SET- ファイルの開始。

  • SEEK_CUR − ファイルポインタの現在の位置。

これはC言語でのfseek()の例です。

次の内容の「demo.txt」ファイルがあるとします-

This is demo text!
This is demo text!
This is demo text!
This is demo text!

コードを見てみましょう。

#include<stdio.h>
void main() {
   FILE *f;
   f = fopen("demo.txt", "r");
   if(f == NULL) {
      printf("\n Can't open file or file doesn't exist.");
      exit(0);
   }
   fseek(f, 0, SEEK_END);
   printf("The size of file : %ld bytes", ftell(f));
   getch();
}

出力

The size of file : 78 bytes

  1. C / C ++のmemcpy()

    この記事では、C ++ STLでのmemcpy()関数の動作、構文、および例について説明します。 memcpy()とは何ですか? memcpy()関数は、C ++ STLに組み込まれている関数であり、ヘッダーファイルで定義されています。 memcpy()関数は、メモリのブロックをコピーするために使用されます。この関数は、あるメモリ位置から別のメモリ位置に値の数をコピーするために使用されます。 関数の結果は、データのバイナリコピーです。この関数は、終了ソースまたは終了ヌル文字をチェックせず、ソースからnumバイトをコピーするだけです。 例 void memcpy( void* destin

  2. C / C ++のAAツリー?

    コンピュータサイエンスのAAツリーは、順序付けられたデータを効率的に保存および取得するために実装されたバランスの取れたツリーの形式として定義されます。 AAツリーは、エントリの効率的な追加と削除をサポートするバイナリ検索ツリーの形式である赤黒ツリーのバリエーションとして扱われます。赤黒木とは対照的に、AAツリーの赤いノードは、左のサブチャイルドではなく、右のサブチャイルドとしてのみ追加できます。この操作の結果、2-3-4ツリーではなく2-3ツリーのシミュレーションが行われるため、メンテナンス操作が簡素化されます。赤黒木のメンテナンスアルゴリズムでは、ツリーのバランスを適切にとるために、7つの異