user define function in c++ , C++ : User Define Function in computer programming language in hindi :-
C++ library मे 140 Predefined function है | जिसे प्रोग्रामर अपनी requirement के हिसाब से use करता है |लेकिंग प्रोग्रामर अपने हिसाब से function को बनाना prefer करता है |इसलिए class / function के concept को introduce किया गया है |main() function एक मुख्य user define function है |जो प्रत्येक C++ प्रोग्राम मे जरुर होता है |अगर प्रोग्रामर कोई दूसरा user define function को use करना चाहता है तो इसे उस user define function को call करना होता है |
User define function
User define function एसे function होते है जिसे यूजर द्वारा define किया जाता है | इसके तीन मुख्य भाग होते है :-
(i)function declaration : इसमें प्रोग्राम मे use किये जाने वाले functions को declare किया जाता है |
(ii)function call : इसमें user define function को call किया जाता है |
(iii)function definition : इसमें function द्वारा किये जाने वाले task को define किया जाता है |
उदाहरन के लिए
#include<iostream.h>
#include<conio.h>
int squareroot( int ); // function declaration
void main()
{
int n,a;
cout<< “Enter Number :”<<endl;
cin>>n;
a= squareroot (n); // function calling
cout<<“Square Root of “n ” : “<<a<<endl;
int b= squareroot (5);
cout<<“Square Root of 5 : “<<b<<endl;
getch();
}
int squareroot( int num ) // function definition
{
return(num*num);
}
इस उदाहरण मे main() function मे ,squareroot() function को दो बार call किया गया है | पहली बार variable number की value को pass किया गया है | दूसरी बार integer ‘5’ को function के argument मे pass किया है |इसका आउटपुट होगा :-
Enter Number : 9
Square Root of 9 : 81
Square Root of 5 : 25
Function Syntax
function का syntax main() function की तरह होता है | इसका syntax होता है :-
type function name (arguments)
{
statements;
}
यहा पर :
type : ये function से return होने वाले value के type को define करता है |
function name : ये function का नाम होता है |
arguments: function मे perform होने वाले operation के लिए information को define करता है |
statements: ये task को define करता है |
इसका उदाहरण होता है :
void print(char a)
{
int i;
for(i=0;i<20;i++)
{
cout<<a;
}
}
इस उदाहरण से character ‘a’ के value को 20 बार print किया जाता है |इसमें
type – void : जो की define करता है function से कोई भी value return नहीं हो रही है |
function name- print : ये function का नाम है |
arguments – char a : यहा पर character ‘a’ की value print किया जाता है |
statements – variable declaration , looping |
C++ मे function definition को अलग अलग ही define करना होता है | किसी function की definition मे किसी दुसरे function को define नहीं कर सकते है |
Function Header
उपर वाले उदहारण मे एक function header है :- void print(char a) | यहा पर void no return value को define करता है |क्योकि print function से कोई value generate नहीं हो रही है |
अतः जब इस function को main() मे call किया जाता है तब
#include<iostream.h>
#include<conio.h>
void print( char ); // function declaration
void main()
{
char n,a;
cout<< “Enter character : “<<endl;
cin>>n;
cout<< “Enter character : “<<endl;
cin>>a;
print(n); // function calling
cout<<“Welcome C++ World”<<endl;
print(n); // function calling
getch();
}
void print(char o)
{
int i;
for(i=0;i<20;i++)
{
cout<<o;
}
}
सबसे पहले variable ‘n’ की value function मे pass किया जाता है | और दूसरी बार ‘a’ की value को function मे pass किया जाता है |अगर प्रोग्रामर निन्म syntax को function call के लिए use करता है error message आ जाता है |
char a= print (n) ; // wrong syntax //
अगर प्रोग्रामर integer को function मे से return करना चाहता है तब function header होगा :
int add(int , int );
अगर प्रोग्रामर double type को function मे से return करना चाहता है तब function header होगा :
double div (int , int );
Main () function header :
जब main() function के header निन्म तरह से लिखते है
int main()
{
}
इस syntax का मतलब होता main() function से integer value return होगी और खाली () का मतलब है की main() function मे कोई भी arguments pass नहीं हो रहे है |जिस function के header मे return type होता है उस function की body मे return statement जरुर होता है | इसलिए int main() function के end मे return 0 जरुर होता है |
return 0 का क्या मतलब होता है ?
जब कंप्यूटर operating system ( UNIX, say और DOS ) मे main() को discuss किया जाता है |तब main() function मे return की गयी value operating system मे डायरेक्ट return होती है | ये operating system ,इन return value को use करते है | उदाहरण के लिए :
unix shell script और DOS batch file को प्रोग्राम की return value को check करने के लिए बनाया जाता है |इसे exit value भी कहते है | जब exit value की value ‘0’ होती है इसका मतलब होता है की प्रोग्रम्म successfully run हो गया है | non zero exit value का मतलब है error in program|
User define function with return value
जब किसी User define function मे return statement को लिखना बहुत सरल होता है |इसका syntax होता है :-
return (return value );
return statement हमेशा function के end मे होता है | इसका उदाहरण है :
#include<iostream.h>
#include<conio.h>
int add ( int , int ); // function declaration
void main()
{
int n,a;
int n,a;
cout<< “Enter First Number :”<<endl;
cin>>n;
cout<<“Enter Second Number :”<<endl;
cin>>a;
int o= add(n,a);
cout << “Addition of Numbers : “<< o << endl;
cin>>a;
int o= add(n,a);
cout << “Addition of Numbers : “<< o << endl;
getch();
}
int add ( int c , int d )
{
int sum ;
sum= c+d;
return (sum);
}इस उदाहरण मे , add () function से दोनों numbers के addition के आउटपुट को return किया जा रहा है जिसे variable ‘o’ मे assign किया गया है | इसका आउटपुट होगा :
Enter First Number : 23
Enter Second Number : 34
Addition of Numbers : 57
{
int sum ;
sum= c+d;
return (sum);
}इस उदाहरण मे , add () function से दोनों numbers के addition के आउटपुट को return किया जा रहा है जिसे variable ‘o’ मे assign किया गया है | इसका आउटपुट होगा :
Enter First Number : 23
Enter Second Number : 34
Addition of Numbers : 57
इस article मे User Define Function के basic को discuss किया है | function topic मे इसे सार से discuss करेगे |