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

C में फ़ंक्शन प्रोटोटाइप का महत्व

यहां हम देखेंगे कि C में फ़ंक्शन प्रोटोटाइप का उपयोग क्यों करना चाहिए। फ़ंक्शन प्रोटोटाइप्स का उपयोग कंपाइलर को फ़ंक्शन पैरामीटर के आर्गुमेंट्स की संख्या और आवश्यक डेटा प्रकारों के बारे में बताने के लिए किया जाता है, यह फ़ंक्शन के रिटर्न टाइप के बारे में भी बताता है। इस जानकारी से, कंपाइलर कॉल करने से पहले फ़ंक्शन सिग्नेचर्स की क्रॉस-चेकिंग करता है। यदि फ़ंक्शन प्रोटोटाइप्स मेंशन नहीं किए जाते हैं, तो प्रोग्राम कुछ चेतावनियों के साथ कंपाइल हो सकता है, और कभी-कभी अजीब आउटपुट उत्पन्न कर सकता है।

यदि किसी फ़ंक्शन को कहीं कॉल किया जाता है, लेकिन उसका बॉडी अभी तक परिभाषित नहीं है, यानी वर्तमान लाइन के बाद परिभाषित है, तो यह समस्याएं उत्पन्न कर सकता है। कंपाइलर को पता नहीं चलता कि फ़ंक्शन क्या है और उसका सिग्नेचर क्या है। उस स्थिति में, हमें फ़ंक्शन प्रोटोटाइप्स की आवश्यकता होती है। यदि फ़ंक्शन पहले से परिभाषित है तो हमें प्रोटोटाइप्स की आवश्यकता नहीं होती।

उदाहरण कोड (बिना प्रोटोटाइप)

#include <stdio.h>

int main() {
   function(50);
   return 0;
}

void function(int x) {
   printf("x का मान है: %d", x);
}

आउटपुट

x का मान है: 50

यह आउटपुट दिखाता है, लेकिन यह नीचे जैसी कुछ चेतावनी दिखा रहा है:

[चेतावनी] 'function' के लिए विरोधाभासी प्रकार
[नोट] 'function' की पिछली अंतर्निहित घोषणा यहां थी

अब फ़ंक्शन प्रोटोटाइप्स का उपयोग करके, यह बिना किसी समस्या के निष्पादित होता है।

उदाहरण कोड (प्रोटोटाइप के साथ)

#include <stdio.h>

void function(int);  // प्रोटोटाइप

int main() {
   function(50);
   return 0;
}

void function(int x) {
   printf("x का मान है: %d", x);
}

आउटपुट

x का मान है: 50
  1. जावास्क्रिप्ट Array.prototype.map() फंक्शन जावास्क्रिप्ट Array.prototype.map() फंक्शन

    जावास्क्रिप्ट का Array.prototype.map() फंक्शन कॉल किए गए फंक्शन के परिणामों के साथ एक नया एरे बनाने के लिए उपयोग किया जाता है। सिंटैक्स इस प्रकार है: arr.map(function callback(currentValue[, index[, array]])) उदाहरण 1 - Math.abs <!DOCTYPE html> <html> <body> <h2>डेमो हेडि

  1. C में fillpoly() फ़ंक्शन C में fillpoly() फ़ंक्शन

    अवधारणा अब हेडर फ़ाइल graphics.h में fillpoly() फ़ंक्शन होता है जिसे त्रिकोण, आयत, पंचभुज, षट्कोण आदि जैसे बहुभुज को बनाने और भरने के लिए लागू किया जाता है। इसलिए इस फ़ंक्शन को drawpoly() के समान तर्कों की आवश्यकता होती है। सिंटैक्स void fillpoly( int number, int *polypoints ); इस मामले में, number

  1. C ग्राफिक्स: bar() फ़ंक्शन C ग्राफिक्स: bar() फ़ंक्शन

    bar() फ़ंक्शन bar() C ग्राफिक्स में एक फ़ंक्शन है जो एक भरा हुआ आयत (बार) खींचता है। यह graphics.h हेडर फ़ाइल में परिभाषित है। सिंटैक्स void bar(int left, int top, int right, int bottom); पैरामीटर left, top: ऊपरी-बाएं कोने के निर्देशांक (x, y) right, bottom: निचले-दाएं कोने के निर्देशांक (x, y)