Latest web development tutorials

Cライブラリ関数 - のclearerr()

C標準ライブラリ - に<stdio.h> C標準ライブラリ-に<stdio.h>

説明

流れストリームとエラー識別子を指定してファイルの終わりをクリアするCライブラリ関数のボイドのclearerr(FILEの*ストリーム)。

声明

ここで、()文のclearerr関数です。

void clearerr(FILE *stream)

パラメータ

  • ストリーム-これは、オブジェクトへのポインタをファイルへのポインタ、オブジェクト識別子ファイルの流れです。

戻り値

これは、失敗しない、外部変数errnoを設定し、それは、その引数が有効なストリームではないことを検出した場合、それは-1を返し、EBADFにerrnoを設定しません。

以下の例は、()関数を使用しているのclearerrを示しています。

#include <stdio.h>

int main()
{
   FILE *fp;
   char c;

   fp = fopen("file.txt", "w");

   c = fgetc(fp);
   if( ferror(fp) )
   {
      printf("读取文件:file.txt 时发生错误\n");
   }
   clearerr(fp);
   if( ferror(fp) )
   {
      printf("读取文件:file.txt 时发生错误\n");
   }
   fclose(fp);

   return(0);
}

私たちは空のファイルでテキストファイルfile.txtなどを、持っているとします。 私たちは次のような結果を生成するファイルを、開くために書き込み専用モードを読み取るしようとしているためのが、上記のプログラムをコンパイルして実行してみましょう。

读取文件:file.txt 时发生错误

C標準ライブラリ - に<stdio.h> C標準ライブラリ-に<stdio.h>