पाठ 12 / 36
फंक्शन प्रोटोटाइप
फंक्शन परिभाषित करने से पहले कंपाइलर को उसके बारे में बताएँ।
प्रोटोटाइप क्यों?
C ऊपर से नीचे पढ़ता है। अगर main किसी ऐसे फंक्शन को कॉल करता है जो फाइल में बाद में परिभाषित है, तो कंपाइलर को पहले ही उसका प्रोटोटाइप — ; पर खत्म होने वाला सिग्नेचर — चाहिए।
पहले घोषणा, फिर परिभाषा
प्रोटोटाइप में पैरामीटर के नाम वैकल्पिक हैं और केवल दस्तावेज़ीकरण के लिए हैं।
#include <stdio.h>
int square(int n); // prototype
int main(void) {
printf("%d\n", square(5));
return 0;
}
int square(int n) { // definition
return n * n;
}
Output:
25
हेडर फाइलें प्रोटोटाइप रखती हैं
<stdio.h> जैसी फाइलें दरअसल printf जैसे फंक्शनों के प्रोटोटाइप से भरी होती हैं, ताकि कंपाइलर लिंकिंग से पहले ही आपकी कॉल्स पर भरोसा कर सके।