C उपयोगकर्ता द्वारा परिभाषित कार्य

इस ट्यूटोरियल में, आप एक उदाहरण की मदद से C प्रोग्रामिंग में उपयोगकर्ता-परिभाषित फ़ंक्शन बनाना सीखेंगे।

एक फ़ंक्शन कोड का एक ब्लॉक है जो एक विशिष्ट कार्य करता है।

सी आपको अपनी आवश्यकता के अनुसार कार्यों को परिभाषित करने की अनुमति देता है। इन कार्यों को उपयोगकर्ता-परिभाषित कार्यों के रूप में जाना जाता है। उदाहरण के लिए:

मान लीजिए, आपको एक वृत्त बनाने और उसे त्रिज्या और रंग के आधार पर रंग देने की आवश्यकता है। इस समस्या को हल करने के लिए आप दो कार्य कर सकते हैं:

  • createCircle() समारोह
  • color() समारोह

उदाहरण: उपयोगकर्ता द्वारा परिभाषित कार्य

यहाँ दो पूर्णांकों को जोड़ने के लिए एक उदाहरण दिया गया है। इस कार्य को करने के लिए, हमने एक उपयोगकर्ता-परिभाषित बनाया है addNumbers()

 #include int addNumbers(int a, int b); // function prototype int main() ( int n1,n2,sum; printf("Enters two numbers: "); scanf("%d %d",&n1,&n2); sum = addNumbers(n1, n2); // function call printf("sum = %d",sum); return 0; ) int addNumbers(int a, int b) // function definition ( int result; result = a+b; return result; // return statement ) 

फंक्शन प्रोटोटाइप

एक फ़ंक्शन प्रोटोटाइप बस एक फ़ंक्शन की घोषणा है जो फ़ंक्शन का नाम, पैरामीटर और रिटर्न प्रकार निर्दिष्ट करता है। इसमें फ़ंक्शन बॉडी नहीं है।

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

फ़ंक्शन प्रोटोटाइप का सिंटैक्स

 वापसी टाइप फ़ंक्शननाम (टाइप 1 तर्क 1, टाइप 2 तर्क 2,…);

उपरोक्त उदाहरण में, int addNumbers(int a, int b);फ़ंक्शन प्रोटोटाइप है जो संकलक को निम्नलिखित जानकारी प्रदान करता है:

  1. फ़ंक्शन का नाम है addNumbers()
  2. फ़ंक्शन का वापसी प्रकार है int
  3. intफ़ंक्शन के लिए दो प्रकार के तर्क दिए जाते हैं

फ़ंक्शन प्रोटोटाइप की जरूरत नहीं है अगर उपयोगकर्ता-परिभाषित फ़ंक्शन फ़ंक्शन से पहले परिभाषित किया गया main()है।

किसी फ़ंक्शन को कॉल करना

कार्यक्रम का नियंत्रण उपयोगकर्ता-परिभाषित फ़ंक्शन को कॉल करके स्थानांतरित किया जाता है।

फ़ंक्शन कॉल का सिंटैक्स

 फ़ंक्शननाम (तर्क 1, तर्क 2,…);

उपरोक्त उदाहरण में, फ़ंक्शन के addNumbers(n1, n2);अंदर बयान का उपयोग करके फ़ंक्शन कॉल किया जाता है main()

कार्य की परिभाषा

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

फ़ंक्शन परिभाषा का सिंटैक्स

 रिटर्न टाइप करें फ़ंक्शननाम (टाइप 1 आर्ग्यू 1, टाइप 2 आर्ग्यू 2,…) (// फंक्शन की बॉडी) 

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

किसी फ़ंक्शन के लिए तर्क पास करना

प्रोग्रामिंग में, तर्क फ़ंक्शन को दिए गए चर को संदर्भित करता है। उपरोक्त उदाहरण में, दो चर n1 और n2 फ़ंक्शन कॉल के दौरान पारित किए जाते हैं।

पैरामीटर a और b फ़ंक्शन परिभाषा में पारित तर्कों को स्वीकार करता है। इन तर्कों को फ़ंक्शन का औपचारिक पैरामीटर कहा जाता है।

एक फ़ंक्शन को दिए गए तर्कों के प्रकार और औपचारिक मापदंडों को मेल खाना चाहिए, अन्यथा, संकलक एक त्रुटि फेंक देगा।

यदि n1 चार प्रकार का है, तो यह भी चार प्रकार का होना चाहिए। यदि n2 फ्लोट प्रकार का है, तो वेरिएबल b भी फ्लोट प्रकार का होना चाहिए।

एक फ़ंक्शन को एक तर्क पारित किए बिना भी कहा जा सकता है।

वापसी विवरण

रिटर्न स्टेटमेंट किसी फ़ंक्शन के निष्पादन को समाप्त करता है और कॉलिंग फ़ंक्शन के लिए एक मान लौटाता है। कार्यक्रम नियंत्रण रिटर्न स्टेटमेंट के बाद कॉलिंग फ़ंक्शन में स्थानांतरित किया जाता है।

उपरोक्त उदाहरण में, परिणाम चर का मान मुख्य फ़ंक्शन पर वापस आ जाता है। main()फ़ंक्शन में योग चर इस मान को असाइन किया गया है।

रिटर्न स्टेटमेंट का सिंटेक्स

 वापसी (अभिव्यक्ति); 

उदाहरण के लिए,

एक वापसी; वापसी (ए + बी);

फ़ंक्शन से लौटाए गए मान का प्रकार और फ़ंक्शन प्रोटोटाइप और फ़ंक्शन परिभाषा में निर्दिष्ट वापसी प्रकार का मिलान होना चाहिए।

एक फ़ंक्शन से तर्क और वापसी मान पर अधिक जानने के लिए इस पृष्ठ पर जाएं।

दिलचस्प लेख...