What is Compile time vs Runtime In C Language
Compile time vs Runtime -संकलन समय बनाम रनटाइम
What is Compile time vs Runtime In C Language
कंपाइल-टाइम और रनटाइम दो प्रोग्रामिंग शब्द हैं जिनका उपयोग सॉफ्टवेयर डेवलपमेंट में किया जाता है। संकलन-समय वह समय है जिस पर स्रोत कोड को निष्पादन योग्य कोड में परिवर्तित किया जाता है जबकि रन टाइम वह समय होता है जिस पर निष्पादन योग्य कोड चलना शुरू होता है। संकलन-समय और रनटाइम दोनों विभिन्न प्रकार की त्रुटि को संदर्भित करते हैं। (Compile time vs Runtime)
Compile-time errors -संकलन-समय त्रुटियां
संकलन-समय की त्रुटियां वे त्रुटियां हैं जो तब होती हैं जब हम गलत सिंटैक्स लिखते हैं। यदि हम किसी प्रोग्रामिंग भाषा का गलत सिंटैक्स या शब्दार्थ लिखते हैं, तो संकलन-समय की त्रुटियां संकलक द्वारा फेंक दी जाएंगी। कंपाइलर प्रोग्राम को तब तक चलाने की अनुमति नहीं देगा जब तक कि प्रोग्राम से सभी त्रुटियों को हटा नहीं दिया जाता। जब प्रोग्राम से सभी त्रुटियां हटा दी जाती हैं, तो संकलक निष्पादन योग्य फ़ाइल उत्पन्न करेगा।
संकलन-समय त्रुटियां हो सकती हैं:
Syntax errors -सिंटैक्स त्रुटियां
Semantic errors -सिमेंटिक एरर
Syntax errors -सिंटैक्स त्रुटियां
जब प्रोग्रामर किसी प्रोग्रामिंग भाषा के सिंटैक्स का पालन नहीं करता है, तो कंपाइलर सिंटैक्स त्रुटि फेंक देगा।
For example,
int a, b:
उपरोक्त घोषणा सी में संकलन-समय त्रुटि उत्पन्न करती है, प्रत्येक कथन अर्धविराम के साथ समाप्त होता है, लेकिन हम कथन के अंत में एक कोलन (:) डालते हैं।
Semantic errors -सिमेंटिक एरर
सिमेंटिक एरर तब मौजूद होता है जब स्टेटमेंट कंपाइलर के लिए अर्थपूर्ण नहीं होते हैं।
For example,
a+b=c;
उपरोक्त कथन एक संकलन-समय त्रुटियों को फेंकता है। उपरोक्त कथन में, हम 'ए' और 'बी' के योग के लिए 'सी' का मान निर्दिष्ट कर रहे हैं जो सी प्रोग्रामिंग भाषा में संभव नहीं है क्योंकि इसमें असाइनमेंट ऑपरेटर के बाईं ओर केवल एक चर हो सकता है जबकि दाईं ओर असाइनमेंट ऑपरेटर में एक से अधिक वेरिएबल हो सकते हैं। (Compile time vs Runtime)
उपरोक्त कथन को इस प्रकार फिर से लिखा जा सकता है:
c=a+b;
Runtime errors -रनटाइम त्रुटियां
रनटाइम त्रुटियाँ वे त्रुटियाँ हैं जो निष्पादन के दौरान और संकलन के बाद होती हैं। रनटाइम त्रुटियों के उदाहरण शून्य से विभाजन आदि हैं। इन त्रुटियों का पता लगाना आसान नहीं है क्योंकि संकलक इन त्रुटियों को इंगित नहीं करता है।
आइए संकलन-समय और रनटाइम के बीच के अंतरों को देखें:
Compile-time | Runtime |
---|---|
कंपाइल-टाइम एरर वे एरर हैं जो कंपाइल-टाइम पर उत्पन्न होते हैं, और कंपाइलर द्वारा उनका पता लगाया जाता है। | रनटाइम त्रुटियां वे त्रुटियां हैं जो संकलक द्वारा उत्पन्न नहीं होती हैं और निष्पादन समय पर अप्रत्याशित परिणाम उत्पन्न करती हैं। |
इस मामले में, कंपाइलर कोड को निष्पादन से रोकता है यदि यह प्रोग्राम में किसी त्रुटि का पता लगाता है। | इस मामले में, कंपाइलर त्रुटि का पता नहीं लगाता है, इसलिए यह कोड को निष्पादन से नहीं रोक सकता है। |
इसमें वाक्य रचना और अर्थ संबंधी त्रुटियाँ हैं जैसे कि कथन के अंत में अर्धविराम गायब होना। | इसमें शून्य से भाग देने, ऋणात्मक संख्या का वर्गमूल निर्धारित करने जैसी त्रुटियां शामिल हैं। |
संकलन-समय त्रुटि का उदाहरण
#include <stdio.h>
int main()
{
int a=20;
printf("The value of a is : %d",a):
return 0;
}
उपरोक्त कोड में, हमने 'a' के मान को प्रिंट करने का प्रयास किया है, लेकिन यह एक त्रुटि देता है। हम अर्धविराम के बजाय कथन के अंत में कोलन डालते हैं, इसलिए यह कोड संकलन-समय त्रुटि उत्पन्न करता है। (Compile time vs Runtime)
Output:-
रनटाइम त्रुटि का उदाहरण
#include <stdio.h>
int main()
{
int a=20;
int b=a/0; // division by zero
printf("The value of b is : %d",b):
return 0;
}
उपरोक्त कोड में, हम 'b' के मान को शून्य से विभाजित करने का प्रयास करते हैं, और यह एक रनटाइम त्रुटि देता है। (Compile time vs Runtime)
Output:-
- What is Programming Errors in C Language
- What is Static in C Language
- What Is Boolean In C Language
- What Is Tokens in C Language
- What is Literals In C Language