एरर या एक्सेप्शन किसी ऐसी चीज को संदर्भित करता है जो कोड निष्पादन में रुकावट के कारण होती है जिससे अपेक्षित परिणाम अंतिम उपयोगकर्ता तक नहीं पहुंच पाता। उस घटना के आधार पर जब एरर उत्पन्न या पहचानी जाती है, हम उन्हें कंपाइल टाइम एरर और रनटाइम एरर के रूप में वर्गीकृत कर सकते हैं।
कंपाइल टाइम एरर और रनटाइम एरर के बीच महत्वपूर्ण अंतर निम्नलिखित हैं।
| Sr. No. | Key | कंपाइल टाइम एरर | रनटाइम एरर |
|---|---|---|---|
| 1 | संदर्भ | कंपाइल-टाइम एरर आमतौर पर सिंटैक्स या सिमेंटिक्स से संबंधित एरर को संदर्भित करती हैं। | दूसरी ओर रनटाइम एरर कोड निष्पादन के दौरान रनटाइम पर आने वाली एरर को संदर्भित करती हैं। |
| 2 | पता लगाना | कंपाइल-टाइम एरर कोड विकास के समय कंपाइलर द्वारा पता लगाई जाती हैं। | रनटाइम एरर कंपाइलर द्वारा पता नहीं लगाई जातीं और इसलिए कोड निष्पादन के समय पहचानी जाती हैं। |
| 3 | सुधार | कंपाइल-टाइम एरर को कोड विकास के समय ही ठीक किया जा सकता है। | रनटाइम एरर कोड निष्पादित होने और एरर पहचाने जाने के बाद ठीक होने की स्थिति में आती हैं। |
कंपाइल टाइम एरर बनाम रनटाइम एरर का उदाहरण
CompileDemo.c
#include <stdio.h>
public class CompileDemo{
void main(){
int x = 100;
int y = 155;
// सेमीकोलन छूट गया
printf("%d", (x, y))
}
}
आउटपुट
error: expected ';' before '}' token
उदाहरण
RuntimeDemo.c
#include <stdio.h>
public class RuntimeDemo{
void main(){
int n = 9;
div = 0;
div = n/0;
printf("resut = %d", div);
}
}
आउटपुट
warning: division by zero [-Wdiv-by-zero] div = n/0;