Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

C लैंग्वेज में एरर हैंडलिंग तकनीक क्या है?

फाइलों में होने वाली कुछ त्रुटियां नीचे सूचीबद्ध हैं -

  • फ़ाइल के अंत से आगे पढ़ने की कोशिश कर रहा है।
  • डिवाइस ओवर फ्लो।
  • अमान्य फ़ाइल खोलने का प्रयास कर रहा है।
  • एक फ़ाइल को किसी भिन्न मोड में खोलकर एक अमान्य कार्रवाई की जाती है।

त्रुटि प्रबंधन के लिए कार्य

त्रुटि प्रबंधन के कार्य इस प्रकार हैं -

  • आतंक ( )
  • आतंक ( )
  • फीओफ ( )

भय ( )

यह पढ़ने या लिखने के संचालन के दौरान त्रुटि का पता लगाने के लिए है।

वाक्य रचना इस प्रकार है -

int ferror (file pointer);

उदाहरण के लिए,

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

सफल होने पर यह शून्य लौटाता है और अन्य मामलों में शून्य के रूप में वापस आता है।

आतंक ( )

इसका उपयोग किसी त्रुटि को प्रिंट करने के लिए किया जाता है।

यह उस स्ट्रिंग को दिखाता है जो इसे पास करती है, जिसके बाद एक कोलन, एक स्पेस और वर्तमान त्रुटि मान का टेक्स्ट प्रतिनिधित्व होता है।

वाक्य रचना इस प्रकार है -

perror (string variable);

उदाहरण के लिए,

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

आउटपुट

Error is: error 0

उदाहरण

आतंक ( ) . के उपयोग के लिए C प्रोग्राम निम्नलिखित है और आतंक ( ) समारोह -

#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.

फीओफ ( )

इसका उपयोग यह जांचने के लिए किया जाता है कि फ़ाइल का अंत हो गया है या नहीं।

वाक्य रचना इस प्रकार है -

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 भाषा में उच्च स्तरीय I/O फ़ंक्शन क्या हैं?

    I/O, C भाषा में इनपुट-आउटपुट फ़ंक्शन को संदर्भित करता है। उच्च स्तरीय I/O इन्हें मनुष्य आसानी से समझ लेता है लाभ पोर्टेबिलिटी है। निम्न स्तर I/O इन्हें कंप्यूटर द्वारा आसानी से समझा जा सकता है। लाभ यह है कि निष्पादन का समय कम है। नुकसान यह है कि गैर पोर्टेबिलिटी। उच्च स्तरीय I/O कार्य उच्च स्तर

  1. C लैंग्वेज में शिफ्ट ऑपरेशंस क्या हैं?

    समस्या C भाषा का उपयोग करके किसी संख्या के बाएँ, दाएँ पाली और पूरक को दिखाने का सरल कार्यक्रम क्या है? समाधान बायां शिफ़्ट यदि किसी चर के मान को एक बार बाएँ-शिफ्ट किया जाता है, तो उसका मान दुगना हो जाता है। उदाहरण के लिए, a =10, फिर a<<1 =20 राइट शिफ्ट यदि किसी चर का मान एक बार दायाँ-शिफ्ट किय

  1. C भाषा में विभिन्न खोज तकनीकें क्या हैं?

    खोज तकनीक का तात्पर्य तत्वों की सूची के बीच एक प्रमुख तत्व को खोजने से है। यदि दिया गया तत्व सूची में मौजूद है, तो खोज प्रक्रिया को सफल कहा जाता है। यदि दिया गया तत्व सूची में मौजूद नहीं है, तो खोज प्रक्रिया को असफल कहा जाता है। C भाषा दो प्रकार की खोज तकनीक प्रदान करती है। वे इस प्रकार हैं