Formal Arguments In C : Actual Argument And Formal Argument In C Language in Hindi

हेलो फ्रेंड्स आज के इस आर्टिकल में हम Function Arguments के बारे में बात करने वाले है | 

आज हम विस्तार से जानेंगे कि Arguments क्या है? ( What is Arguments in C In Hindi ) Arguments कितने प्रकार के होते है? ( Types of Arguments in C In Hindi ) तथा Actual Arguments और Formal Arguments में क्या अंतर है (Actual Arguments and Formal Arguments in C in Hindi)

इससे पहले हमने जाना था कि फंक्शन क्या है और फंक्शन का उपयोग कैसे करते है | यदि आपने वो आर्टिकल नहीं पढ़ा तो उसे एक बार जरूर पढ़ ले क्योकि फंक्शन आर्गुमेंट के बारे में अच्छे से जानने के लिए आपको Function क्या है? के बारे में पता होना जरुरी है | 

तो चलिए अब हम जानते है कि आर्गुमेंट क्या है? (What is Arguments in C In Hindi)

Function Arguments in C in Hindi
Function Arguments in C

Arguments क्या है? (What is Arguments in C In Hindi)

जैसे की आपको पता होगा, जब भी हम कोई फंक्शन बनाते है तो उस फंक्शन को डिफाइन या डिक्लेअर करते समय उसके पैरेंथेसिस में हम कुछ लिखते है इसे ही Arguments या parameters कहते है | 

फंक्शन को डिफाइन या डिक्लेअर करते समय Function के पैरेंथेसिस में हम variable name के साथ उसका data types भी लिखते है | 

वैसे पैरेंथेसिस में कुछ लिखना या न लिखा उस Functions के बिहेवियर पर निर्भर करता है | 

जैसे कोई फंक्शन है जिसको अपना कार्य करने के लिए कुछ नंबर या वैल्यू की जरूरत है तो हम उसके पैरेंथेसिस में वेरिएबल डिक्लेरेशन द्वारा वेरिएबल बना देते है ताकि फंक्शन उस वैल्यू को इन वेरिएबल्स में रख सके | 

Example -:

//Here  “ int var1, int var2  ” is a Function argument list
sum( int var1, int var2 )  
{
  statements; 
  statements; 
   …
   …
   Body of Function
}

इस उदाहरण में हमने फंक्शन को डिफाइन करते समय उसके पैरेंथेसिस में int डाटा टाइप के दो वेरिएबल var1 और var2 डिक्लेअर किया है ताकि जब फंक्शन कॉल करते समय कोई वैल्यू फंक्शन को पास किया जायेगा तब फंक्शन उन वैल्यू को इन वेरिएबल में स्टोर कर पायेगा | 

आर्गुमेंट या पैरामीटर के प्रकार (Types of Arguments in C)

सी लैंग्वेज में फंक्शन कॉल और फंक्शन डिक्लेरेशन के समय पैरेंथेसिस में जो कुछ आर्गुमेंट लिखा जाता है उसके आधार पर इसे दो भागो में बांटा गया है |

  • Actual arguments
  • Formal arguments

Actual arguments

जब हम फंक्शन कॉल करते समय फंक्शन के पैरेंथेसिस में कुछ लिखते है तो इसे ही Actual arguments या Actual parameters कहते है | 

Example -:

int x = 2, y = 23;
func1(x, y);

इस उदाहरण में फंक्शन के पैरेंथेसिस में लिखा x और y Actual arguments है | 

Actual arguments में constant, variables, expressions हो सकता है | 

fun1(x, y);               //Here actual arguments are variable
fun1(x + y, y + x);       //Here actual arguments are expression
fun1(5, 60);              //Here actual arguments are constant 

Formal arguments

जब हम फंक्शन को डिफाइन करते समय उसके पैरेंथेसिस में कुछ लिखते है तो इसे ही Formal arguments या Formal parameter कहते है | 

Formal arguments में जो वैल्यू आती है वो सभी, actual arguments से copied होती है | इसका स्कोप केवल उस फंक्शन तक होता है और जैसे ही फंक्शन नष्ट होता है उसमे बने वेरिएबल भी नष्ट हो जाते है | 

int area(int x)
{
    // write logic here
}

इस उदाहरण में int x एक Formal arguments है जिसका स्कोप केवल उसी फंक्शन तक सीमित है |

Important Point 

  • फंक्शन कॉल करते समय जो actual arguments में नंबर , डेटा टाइप जिस ऑर्डर होता है वही आर्डर formal arguments में भी होना चाहिए | 
  • यदि actual arguments और formal आर्गुमेंट के टाइप मैच नहीं करता तो कम्पाइलर संभव होने पर actual arguments के टाइप को Formal arguments के टाइप में कन्वर्ट करने की कोशिश करता है नहीं तो फॉर्मल आर्गुमेंट में गार्बेज वैल्यू जाती है | 
  • Formal arguments में होने वाला बदलाव actual arguments को प्रभावित करेगा या नहीं ये इस बात पर निर्भर करता है कि actual arguments से किस टाइप की वैल्यू फॉर्मल आर्गुमेंट को पास हो रही है | 
  • यदि Actual arguments से Formal arguments को किसी वेरिएबल का वैल्यू पास हो रहा है तो Formal arguments में होने वाले बदलाव Actual arguments को प्रभावित नहीं करेंगे और यदि Actual arguments से Formal arguments को किसी वेरिएबल का एड्रेस पास हो रहा है तो Formal arguments में होने वाले बदलाव Actual arguments को प्रभावित करेंगे | 

जब Actual arguments द्वारा कोई वैल्यू पास होता है तो उसे Call by value कहते है और जब कोई एड्रेस पास होता है तो उसे Call by address या Call by reference कहते है | 

आप Call by value और Call by reference के बारे में यहाँ से पढ़ सकते है -: Call by Value and Call by Address in C 

Example -:

// arguments call by value 
#include <stdio.h> 
int area(int l, int b)   //Formal Arguments 
{
    return( l*b ); 
 } 
 
int main()
{
   int x, y, z;
   x = 5;
   y = 5;
   z = area(x,y); // call by value & actual arguments
   return 0;
}

निष्कर्ष

दोस्तों आशा करता हु कि आज के इस पोस्ट को पढ़ने के बाद आपको Arguments क्या है? ( What is Arguments in C In Hindi ) और Arguments कितने प्रकार के होते है? ( Types of Arguments in C In Hindi ) तथा Actual Arguments और Formal Arguments में क्या अंतर है (Actual Arguments and Formal Arguments in C in Hindi) से संबंधित सभी जानकारी मिल गई होगी |

अगर आप सी लैंग्वेज का Complete Tutorial चाहते है तो मेरे इस पोस्ट C Language Tutorial In Hindi को देखे यहाँ आपको C Programming Language के सभी टॉपिक्स step by step मिल जाएगी |

दोस्तों आशा करता हु कि आपको ये पोस्ट पसंद आई होगी और आपको Arguments क्या है? ( What is Arguments in C In Hindi ) के बारे में काफी जानकरी हुई होगी |

अगर आपको ये पोस्ट पसंद आया है तो इस पोस्ट को अपने अपने दोस्तों को शेयर करना न भूलिएगा ताकि उनको भी ये जानकारी प्राप्त हो सके |

अगर आपको अभी भी Arguments in C Language से संबंधित कोई भी प्रश्न या Doubt है तो आप जरूर बताये मैं आपके सभी सवालों का जवाब दूँगा और ज्यादा जानकारी के लिए आप हमसे संपर्क कर सकते है |

एसी ही नया टेक्नोलॉजी ,Programming Language, Coding , C Language, C++, Python Course , Java Tutorial से रिलेटेड जानकारियाँ पाने के लिए हमारे इस वेबसाइट को सब्सक्राइब कर दीजिए | जिससे हमारी आने वाली नई पोस्ट की सूचनाएं जल्दी प्राप्त होगी |

Thank you ! आपका दिन मंगलमय हो

पढ़ते रहिए और बढ़ते रहिए | Keep Reading and Keep Growing

Jeetu Sahu is A Web Developer | Computer Engineer | Passionate about Coding, Competitive Programming and Blogging