एक फ़ंक्शन एक स्व-निहित ब्लॉक है जो एक विशिष्ट अच्छी तरह से परिभाषित कार्य करता है।
कार्यों के प्रकार
फ़ंक्शंस को मोटे तौर पर दो प्रकारों में वर्गीकृत किया जाता है जो इस प्रकार हैं -
- पूर्वनिर्धारित कार्य
- उपयोगकर्ता परिभाषित कार्य
कार्यों के बीच संचार
तर्क और वापसी मूल्य का उपयोग करके कार्य आपस में संवाद करते हैं।
रिटर्न-डेटाटाइप फ़ंक्शन नाम (तर्क सूची) के लिए 'सी' फ़ंक्शन का फार्म इस प्रकार है -
{ local variable declarations; executable statements(s); return (expression); }
उदाहरण के लिए, शून्य मूल (इंट एक्स, इंट वाई)।
{ int p; p=x*y; printf(“product = %d”,p); }
प्रोटोटाइप फ़ंक्शन
इन कार्यों को दो तरीकों से किया जा सकता है जैसा कि नीचे बताया गया है -
-
प्रत्येक के लिए पहचानकर्ताओं के साथ या बिना टाइप किए गए तर्कों के साथ फ़ंक्शन घोषणा की एक प्रति बनाएं।
उदाहरण के लिए,
int func(int, float, unsigned [2]); int func(int i, float f, unsigned u[2]);
-
हम फ़ंक्शन परिभाषा को प्रोटोटाइप रूप में लिखकर फ़ंक्शन का प्रोटोटाइप भी बना सकते हैं।
उदाहरण के लिए,
int func(int i, float f, unsigned u[2]){ < code for func > }
फ़ंक्शन प्रोटोटाइप का उपयोग
-
एक प्रोटोटाइप फ़ंक्शन जिसे असंगत प्रकार के एक या अधिक तर्कों के साथ बुलाया जाता है।
-
जब एक ही फ़ंक्शन के लिए स्पष्ट या निहित घोषणाएं सामने आती हैं। कंपाइलर का यह संस्करण डुप्लिकेट घोषणाओं की सावधानीपूर्वक जांच करता है और विसंगतियों को पकड़ता है।