एक फंक्शन एक स्व-निहित ब्लॉक है जो एक विशिष्ट अच्छी तरह से परिभाषित कार्य करता है।
फंक्शन के प्रकार
फंक्शन मोटे तौर पर दो प्रकारों में वर्गीकृत हैं:
- प्रीडिफाइंड फंक्शन
- यूजर डिफाइंड फंक्शन
फंक्शंस के बीच संचार
फंक्शन आर्गुमेंट्स और रिटर्न वैल्यू का उपयोग करके एक दूसरे के साथ संचार करते हैं।
'C' फंक्शन का फॉर्म रिटर्न-डेटाटाइप फंक्शन नेम (आर्गुमेंट लिस्ट) के लिए निम्नानुसार है:
{
लोकल वेरिएबल डिक्लेरेशन;
एक्जीक्यूटेबल स्टेटमेंट(s);
return (एक्सप्रेशन);
}
उदाहरण के लिए, void mul (int x, int y)।
{
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]){
}
फंक्शन प्रोटोटाइप का उपयोग
- एक प्रोटोटाइप्ड फंक्शन जिसे एक या अधिक असंगत प्रकार के आर्गुमेंट्स के साथ कॉल किया जाता है।
- जब उसी फंक्शन के लिए एक्सप्लिसिट या इम्प्लिसिट डिक्लेरेशन मिलते हैं। कंपाइलर का यह संस्करण डुप्लिकेट डिक्लेरेशन की सावधानीपूर्वक जांच करता है और असंगतियों को पकड़ता है।