https://www.rakeshmgs.in/search/label/Template
https://www.rakeshmgs.in

Hindi Notes

RakeshMgs

Functions in C Programming in Hindi Notes | With Argument Without Argument

गुरुवार, फ़रवरी 25, 2021

Functions in C

कई बार आपके program में कुछ ऐसे statements हो सकते है जिन्हें आपको compiler से बार बार execute करवाने की आवश्यकता होती है। ऐसी situation में इन statements को बार बार लिखने में बहुत समय लग सकता है। साथ ही इससे program बहुत बड़ा हो जाता है जिससे उसे पढ़ने और समझने में मुश्किल होती है।

इस situation से बचने के लिए C आपको एक mechanism provide करती है जिसे function कहते है। जिन भी statements को आप program में कई जगह बार बार execute करवाना चाहते है उन्हें एक block में लिखते है और इस block को एक unique नाम देते है।

इसके बाद program में जँहा भी जितनी भी बार इन statements को आप execute करवाना चाहते है तब आप function के उस unique नाम के द्वारा उस function को call करते है। Call करते ही function (block) में लिखे गए सभी statements execute हो जाते है।

Function का name और parameters (इनके बारे में आप आगे पढ़ेंगे) जब आप लिखते है तो उसे function declaration कहा जाता है। जब आप function में execute होने वाले सभी statements लिखते है तो उसे function definition कहा जाता है। जब आप पूरे program में कँही भी function को use करते है तो उसे function call कहा जाता है।

किसी भी program में functions को use करने की advantages नीचे दी जा रही है।

  1. Functions create करने से programmer का time और computer की memory बचती है।
  2. एक ही code को आसानी से बार बार use किया जा सकता है। इससे code re-usability बढ़ती है।
  3. Program modules में divide हो जाता है जिससे उसे आसानी से manage और debug किया जा सकता है।
  4. Program की readability बढ़ती है।

C language में दो प्रकार के functions होते है।

1.Predefined Functions 2.User-defined Functions

Predefined Functions and User Defined Functions


Predefined Functions

Predefined functions वो functions होते है जो C library में पहले से ही provide किये गए है। इन function को पहले से ही declare और define किया गया होता है। बस इन्हें use करने के लिए header files को include करना होता है।



उदाहरण के लिए यदि आप अपने program में scanf() और printf() जैसे functions use करना चाहते है तो इसके लिए आप header file को अपने program में include करते है। ये दोनों ही predefined functions है।

Predefined functions के कुछ उदाहरण –

  1. scanf()
  2. printf()
  3. strcpy()
  4. void*malloc()
  5. int to lower() आदि है।

User Defined Functions

User defined functions वो function होते है जो programmer (आप) खुद create करते है। Programmer अपनी आवश्यकता के अनुसार कितने भी functions create कर सकता है। ये functions कैसे create किये जाते है और इन्हें कैसे use किया जाता है।

Creating and Using C Functions

C में functions create करना और उन्हें use करना बहुत ही आसान है। इस process के 3 मुख्य steps होते है।

  1. Functions Declaration
  2. Function Definition
  3. Function Call

Function Declaration

इस part में आप function का नाम, उसका return type और parameters define करते है। Function declaration का general syntax नीचे दिया गया है।

	
	
returntype functionName(type1 parameter1, type2 parameter2,...);

1.returntype
2.function name
3.parameter list
4.terminating semicolon

returntype

आपका function execution complete होने पर किस प्रकार की value return करेगा ये आप return type के द्वारा define करते है। यदि आप एक addition का program बना रहे है जो 2 whole numbers को add करता है तो आपका return type int होगा।

functionName

ये आपके function का नाम होता है। ये पूरे program में unique होना चाहिए। जब आप function को call करते है तो इस नाम को ही लिखते है।

parameter list

ये उन variables की list होती है जो आप function को call करते समय पास करेंगे। जैसे की यदि आप addition का function बना रहे है तो parameters के रूप में आप 2 numbers या 2 variables पास कर सकते है और फिर function के अंदर उनको add करके result show कर सकते है। यह आवश्यक नहीं की आप सभी functions में parameters define करें।

एक बात आपको हमेशा याद रखनी चाहिए की function declaration statement को आप semicolon से terminate करते है। लेकिन function definition के साथ ऐसा नहीं होता है। मान लीजिये की आप addition का function बना रहे है जो दो numbers को add करता है तो उसे आप इस प्रकार declare करते है।

Time for an Example

    
#include <stdio.h> int multiply(int a, int b);// function declaration int main() { int i, j, result; printf("Please enter 2 numbers you want to multiply..."); scanf("%d%d", &i, &j); result =multiply(i, j); // function call printf("The result of muliplication is: %d", result); return 0; } int multiply(int a, int b) { return (a*b); // function defintion, this can be done in one line }

Function definition Syntax

इस part को function body भी कहा जाता है। इसमें आप वो statements लिखते है जिन्हें आप execute करवाना चाहते है।

	
	
returntype functionName(type1 parameter1, type2 parameter2,...) { // function body goes here }

Function definition में return-type, function-name और list-of-parameters उसी प्रकार होते है जैसे की function declaration में होते है। इनके बाद में curly brackets के block में वो statements लिखे जाते है जो आप execute करवाना चाहते है।

Calling a function

Program में जब भी आप function को use करना चाहते है तो उसे call करते है।

	
	
functionName(argument1, argument2,...);

argument-list – arguments वो real values होती है जो आप functions को call करते समय पास करते है। ये values function definition में parameters को assign होती है। इसके बाद इन values पर processing होती है और result return किया जाता है।

Addition के function को call करते समय कोई 5 values पास करेंगे जैसे की 5 और 7, इनकी जगह variables भी pass किये जा सकते है जिनमें values store की गयी है।

ये values parameter variables a और b को assign हो जाएँगी और function के अंदर इन variables पर ही processing होती है। ऐसे functions जिनमें parameters defined किये गए है और यदि आप function call करते समय arguments पास नहीं करते है तो program में error आती है।

Addition के function को आप इस प्रकार call कर सकते है।

	
	
/* Calling add function with arguments 5 and 7*/ add(5,7);
Functions with Argument and without Argument