Function Prototype C Programming Discussion
Function Prototype C Programming Discussion: किसी Function को जब प्रोग्राम में उपयोग में लाया जाना होता है, तब उस Function को Header Files के बाद व main() Function से पहले Declare कर दिया जाता है। इसे Prototype Declaration कहा जाता है। ऐसा करने से Compiler को Program Execution के समय ये पता चल जाता है कि कोई Function प्रोग्राम में Use किया जा रहा है, जिसे प्रोग्राम में किसी अन्य स्थान पर या फिर किसी अन्य File में Define किया गया है। किसी भी Function को Define करते समय Function को प्राप्त होने वाले Arguments किस प्रकार के होंगे, ये निर्धारित करने के दो तरीके हो सकते हैं।
हम चाहें तो UDF को प्राप्त होने वाले Arguments के Data Type का Declaration Argument कोष्ठक के अन्दर भी कर सकते हैं, जिस कोष्ठक में Arguments प्राप्त होते हैं या फिर हम चाहें तो कोष्ठक में केवल Arguments प्राप्त कर लें और फिर अगले Statement में Arguments के Data Type का Declaration कर सकते हैं, जैसाकि पिछले Format में बताया गया है। यदि हम सीधे ही Argument कोष्ठक में Data Type का Declaration करना चाहें तो Function का Definition Format निम्नानुसार हो जाता है:
Return-Data-Type Function-Name (Data-type Arg1, Data-type arg2, Data-type argn)
{
local Variables;
Statement 1;
Statement n;
Return (Expression);
}
इस प्रकार से हमने UDF के Definition के दो Format देखें। दोनों ही प्रकार के Definitions सही हैं। हम इनमें से किसी को भी Use कर सकते हैं। दूसरी प्रकार से Declare करने पर यह पूर्णतया निश्चित हो जाता है कि Calling Function से वही मान Argument के तौर पर कोष्ठक में लिखे गए Variables में आऐंगे जो सही होंगे। जैसे
int max (int a , int b)
ये User Defined Function ये निश्चित कर देता है, कि Calling Function से प्राप्त होने वाले दोनों ही मान int प्रकार के होंगे अन्यथा इन Variables में Calling Function से मान नहीं आऐंगे, जबकि यदि हम निम्नानुसार Declaration करें:
int max ( a, b )
int a, b;
तो Calling Function से आने वाला मान a व b में जरूर आएगा फिर चाहे Calling Function में a व b को प्राप्त होने वाले मान Float या Double प्रकार के ही क्यों ना हों। इसलिए हम हमेंशा किसी भी प्रकार की परेशानी से बचने के लिए दूसरे Format के प्रकार से ही Arguments Receive करते हैं।
अगले Post में हम C Programming Language में Create किए जा सकने वाले विभिन्न प्रकार के User Defined Functions के बारे में One-by-One ढेर सारे Simple Examples के माध्यम से विस्तार से जानेंगे क्योंकि C Language में Define किए जाने वाले विभिन्न प्रकार के Functions को लगभग समान प्रकार से ही अन्य Languages जैसे कि C++, Java, C#, PHP, JavaScript, आदि में Create किया जाता है, इसलिए यदि आप C Language में Functions को ठीक से Create करना समझ लें, तो किसी भी अन्य Programming Language में बिना किसी परेशानी के Functions Create कर सकते हैं, जो कि किसी भी Programming Language का मुख्य Building Block होता है।
No comments: