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

C言語でのエラー処理技術とは何ですか?


ファイルで発生するエラーの一部を以下に示します-

  • ファイルの終わりを超えて読み込もうとしています。
  • デバイスオーバーフロー。
  • 無効なファイルを開こうとしています。
  • 別のモードでファイルを開くと、無効な操作が実行されます。

エラー処理のための関数

エラー処理の機能は次のとおりです-

  • エラー()
  • perror()
  • feof()

エラー()

読み取りまたは書き込み操作の実行中にエラーを検出するためのものです。

構文は次のとおりです-

int ferror (file pointer);

たとえば、

FILE *fp;
if (ferror (fp))
printf ("error has occurred”);

成功した場合はゼロを返し、それ以外の場合はゼロ以外として返します。

perror()

エラーの印刷に使用されます。

渡される文字列が表示され、その後にコロン、スペース、および現在のエラー値のテキスト表現が続きます。

構文は次のとおりです-

perror (string variable);

たとえば、

FILE *fp;
char str[30] = ”Error is”;
perror (str);

出力

Error is: error 0

以下は、エラー()を使用するためのCプログラムです。 およびperror() 関数-

#include<stdio.h>
main ( ){
   FILE *fp;
   char str[30] = "error is";
   int i = 20;
   clrscr ( );
   fp = fopen ("sample. txt", "r");
   if (fp = = NULL){
      printf ("file doesnot exist");
   } else {
      fprintf (fp, "%d", i);
      if (ferror (fp)){
         perror (str);
         printf ("error ");
   }
   fclose (fp);
   getch ( );
}

出力

上記のプログラムを実行すると、次の結果が得られます-

Error is: Error1 compiler generated.
Error.

feof()

ファイルの終わりに到達したかどうかを確認するために使用されます。

構文は次のとおりです-

int feof ( file pointer);

たとえば、

FILE *fp;
if (feof (fp))
printf ("reached end of the file");

ゼロ以外を返す場合は、成功です。それ以外の場合はゼロです。

以下は、 feof()を使用するためのCプログラムです。 関数-

#include<stdio.h>
main ( ){
   FILE *fp;
   int i,n;
   clrscr ( );
   fp = fopen ("number. txt", "w");
   for (i=0; i<=100;i= i+10){
      putw (i, fp);
   }
   fclose (fp);
   fp = fopen ("number. txt", "r");
   printf ("file content is”);
   for (i=0; i<=100; i++){
      n = getw (fp);
      if (feof (fp)){
         printf ("reached end of file");
         break;
      }
      else{
         printf ("%d", n);
      }
   }
   fclose (fp);
   getch ( );
}

出力

上記のプログラムを実行すると、次の結果が得られます-

File content is
10 20 30 40 50
60 70 80 90 100
Reached end of the file.

  1. C言語でのシフト演算とは何ですか?

    問題 C言語を使用して、数値の左シフト、右シフト、および補数を表示する簡単なプログラムは何ですか? 解決策 左シフト 変数の値が1回左シフトされると、その値は2倍になります。 たとえば、a =10、次にa <<1 =20 右シフト 変数の値を1回右シフトすると、その値は元の値の半分になります。 1 =5 例 以下はシフト操作のCプログラムです- #include<stdio.h> main (){    int a=9;    printf("Rightshift of a = %d\n",a&

  2. C言語でのさまざまな検索手法は何ですか?

    検索手法とは、要素のリストから重要な要素を見つけることです。 指定された要素がリストに存在する場合、検索プロセスは成功したと言われます。 指定された要素がリストに存在しない場合、検索プロセスは失敗したと言われます。 C言語は、2種類の検索手法を提供します。それらは次のとおりです- 線形検索 二分探索 線形探索 キー要素の検索は直線的に行われます。 これは最も簡単な検索手法です。 リストが並べ替えられることは想定されていません。 制限-より多くの時間を消費し、システムの電力を削減します。 入力(i / p) ソートされていない要素のリスト、キー。 出力(o /