C ++ - funksjon (med eksempler)

I denne opplæringen vil vi lære om C ++ funksjon og funksjonsuttrykk ved hjelp av eksempler.

En funksjon er en blokk med kode som utfører en bestemt oppgave.

Anta at vi trenger å lage et program for å lage en sirkel og fargelegge den. Vi kan lage to funksjoner for å løse dette problemet:

  • en funksjon for å tegne sirkelen
  • en funksjon for å fargelegge sirkelen

Å dele et komplekst problem i mindre biter gjør programmet vårt lett å forstå og gjenbrukbart.

Det er to typer funksjoner:

  1. Standard biblioteksfunksjoner: Forhåndsdefinert i C ++
  2. Brukerdefinert funksjon: Laget av brukere

I denne opplæringen vil vi fokusere mest på brukerdefinerte funksjoner.

C ++ Brukerdefinert funksjon

C ++ lar programmereren definere sin egen funksjon.

En brukerdefinert funksjon grupperer kode for å utføre en bestemt oppgave, og den gruppen av kode får et navn (identifikator).

Når funksjonen påkalles fra en hvilken som helst del av programmet, utfører det alle kodene som er definert i hoveddelen av funksjonen.

C ++ Funksjonserklæring

Syntaksen for å erklære en funksjon er:

 returnType functionName (parameter1, parameter2,… ) ( // function body )

Her er et eksempel på en funksjonserklæring.

 // function declaration void greet() ( cout << "Hello World"; )

Her,

  • navnet på funksjonen er greet()
  • funksjonen for retur er void
  • de tomme parentesene betyr at den ikke har noen parametere
  • funksjonen kroppen er skrevet inni ()

Merk: Vi vil lære om returnTypeog parameterssenere i denne opplæringen.

Ringe til en funksjon

I programmet ovenfor har vi erklært en funksjon som heter greet(). For å bruke greet()funksjonen, må vi kalle den.

Slik kan vi kalle funksjonen ovenfor greet().

 int main() ( // calling a function greet(); )
Hvordan Funksjon fungerer i C ++

Eksempel 1: Vis en tekst

 #include using namespace std; // declaring a function void greet() ( cout << "Hello there!"; ) int main() ( // calling the function greet(); return 0; )

Produksjon

 Hei der!

Funksjonsparametere

Som nevnt ovenfor kan en funksjon deklareres med parametere (argumenter). En parameter er en verdi som sendes når deklarerer en funksjon.

La oss for eksempel vurdere funksjonen nedenfor:

 void printNum(int num) ( cout << num; )

Her er intvariabelen num funksjonsparameteren.

Vi overfører en verdi til funksjonsparameteren mens vi ringer til funksjonen.

 int main() ( int n = 7; // calling the function // n is passed to the function as argument printNum(n); return 0; )

Eksempel 2: Funksjon med parametere

 // program to print a text #include using namespace std; // display a number void displayNum(int n1, float n2) ( cout << "The int number is " << n1; cout << "The double number is " << n2; ) int main() ( int num1 = 5; double num2 = 5.5; // calling the function displayNum(num1, num2); return 0; )

Produksjon

 Int-tallet er 5 Det doble tallet er 5,5

I programmet ovenfor har vi brukt en funksjon som har en intparameter og en doubleparameter.

Vi sender deretter num1 og num2 som argumenter. Disse verdiene lagres av henholdsvis funksjonsparametrene n1 og n2.

C ++ funksjon med parametere

Merk: Typen av argumentene som ble sendt mens du anropte funksjonen, må samsvare med de tilsvarende parametrene som er definert i funksjonserklæringen.

Returuttalelse

I programmene ovenfor har vi brukt tomrom i funksjonserklæringen. For eksempel,

 void displayNumber() ( // code )

Dette betyr at funksjonen ikke returnerer noen verdi.

Det er også mulig å returnere en verdi fra en funksjon. For dette må vi spesifisere returnTypefunksjonen under funksjonserklæringen.

Deretter kan returnsetningen brukes til å returnere en verdi fra en funksjon.

For eksempel,

 int add (int a, int b) ( return (a + b); )

Her har vi datatypen i intstedet for void. Dette betyr at funksjonen returnerer en intverdi.

Koden return (a + b);returnerer summen av de to parametrene som funksjonsverdien.

Den returnuttalelsen betegner at funksjonen er avsluttet. Enhver kode som er returninne i funksjonen, blir ikke utført.

Eksempel 3: Legg til to tall

 // program to add two numbers using a function #include using namespace std; // declaring a function int add(int a, int b) ( return (a + b); ) int main() ( int sum; // calling the function and storing // the returned value in sum sum = add(100, 78); cout << "100 + 78 = " << sum << endl; return 0; )

Produksjon

 100 + 78 = 178

I programmet ovenfor add()brukes funksjonen til å finne summen av to tall.

Vi passerer to intbokstaver 100og 78mens vi kaller funksjonen.

Vi lagrer den returnerte verdien av funksjonen i den variable summen, og deretter skriver vi den ut.

Arbeid av C ++ funksjon med returoppgave

Legg merke til at summen er en variabel av inttypen. Dette er fordi returverdien av add()er av inttypen.

Funksjon Prototype

In C++, the code of function declaration should be before the function call. However, if we want to define a function after the function call, we need to use the function prototype. For example,

 // function prototype void add(int, int); int main() ( // calling the function before declaration. add(5, 3); return 0; ) // function definition void add(int a, int b) ( cout << (a + b); )

In the above code, the function prototype is:

 void add(int, int);

This provides the compiler with information about the function name and its parameters. That's why we can use the code to call a function before the function has been defined.

The syntax of a function prototype is:

 returnType functionName(dataType1, dataType2,… );

Example 4: C++ Function Prototype

 // using function definition after main() function // function prototype is declared before main() #include using namespace std; // function prototype int add(int, int); int main() ( int sum; // calling the function and storing // the returned value in sum sum = add(100, 78); cout << "100 + 78 = " << sum << endl; return 0; ) // function definition int add(int a, int b) ( return (a + b); )

Output

 100 + 78 = 178

The above program is nearly identical to Example 3. The only difference is that here, the function is defined after the function call.

That's why we have used a function prototype in this example.

Benefits of Using User-Defined Functions

  • Functions make the code reusable. We can declare them once and use them multiple times.
  • Functions make the program easier as each small task is divided into a function.
  • Functions increase readability.

C++ Library Functions

Library functions are the built-in functions in C++ programming.

Programmers can use library functions by invoking the functions directly; they don't need to write the functions themselves.

Some common library functions in C++ are sqrt(), abs(), isdigit(), etc.

In order to use library functions, we usually need to include the header file in which these library functions are defined.

For instance, in order to use mathematical functions such as sqrt() and abs(), we need to include the header file cmath.

Example 5: C++ Program to Find the Square Root of a Number

 #include #include using namespace std; int main() ( double number, squareRoot; number = 25.0; // sqrt() is a library function to calculate the square root squareRoot = sqrt(number); cout << "Square root of " << number << " = " << squareRoot; return 0; )

Output

 Kvadratrot av 25 = 5

I dette programmet brukes sqrt()bibliotekfunksjonen til å beregne kvadratroten til et tall.

Funksjonserklæringen for sqrt()er definert i cmathoverskriftsfilen. Derfor må vi bruke koden for #include å bruke sqrt()funksjonen.

For å lære mer, besøk C ++ Standard Library-funksjoner.

Interessante artikler...