C ++ funkcija (ar piemēriem)

Šajā apmācībā mēs ar piemēru palīdzību uzzināsim par funkciju C ++ un funkciju izteiksmēm.

Funkcija ir koda bloks, kas veic noteiktu uzdevumu.

Pieņemsim, ka mums ir jāizveido programma, lai izveidotu apli un to iekrāsotu. Šīs problēmas risināšanai mēs varam izveidot divas funkcijas:

  • funkcija apļa uzzīmēšanai
  • funkcija apļa krāsošanai

Sarežģītas problēmas sadalīšana mazākos gabalos padara mūsu programmu viegli saprotamu un atkārtoti lietojamu.

Ir divu veidu funkcijas:

  1. Standarta bibliotēkas funkcijas: iepriekš definētas C ++
  2. Lietotāja definēta funkcija: izveido lietotāji

Šajā apmācībā mēs galvenokārt pievērsīsimies lietotāja definētām funkcijām.

C ++ lietotāja definēta funkcija

C ++ ļauj programmētājam pašam noteikt savu funkciju.

Lietotāja definēta funkcija grupē kodu, lai veiktu noteiktu uzdevumu, un šai koda grupai tiek piešķirts nosaukums (identifikators).

Kad funkcija tiek izsaukta no jebkuras programmas daļas, tā visa izpilda funkcijas pamattekstā definētos kodus.

C ++ funkciju deklarācija

Funkcijas deklarēšanas sintakse ir šāda:

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

Lūk, funkciju deklarācijas piemērs.

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

Šeit,

  • funkcijas nosaukums ir greet()
  • funkcijas atgriešanas veids ir void
  • tukšās iekavas nozīmē, ka tam nav parametru
  • iekšpusē ir ierakstīts funkcijas ķermenis ()

Piezīme. Mēs uzzināsim par šo mācību returnTypeun parametersvēlāk.

Funkcijas izsaukšana

Iepriekš minētajā programmā mēs esam deklarējuši funkciju ar nosaukumu greet(). Lai izmantotu greet()funkciju, mums tā jāizsauc.

Lūk, kā mēs varam izsaukt iepriekš minēto greet()funkciju.

 int main() ( // calling a function greet(); )
Kā funkcija darbojas C ++

1. piemērs: Teksta parādīšana

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

Rezultāts

 Sveiki!

Funkciju parametri

Kā minēts iepriekš, funkciju var deklarēt ar parametriem (argumentiem). Parametrs ir vērtība, kas tiek nodota, deklarējot funkciju.

Piemēram, ņemsim vērā zemāk redzamo funkciju:

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

Šeit intmainīgais skaits ir funkcijas parametrs.

Funkcijas parametram mēs nododam vērtību, vienlaikus izsaucot funkciju.

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

2. piemērs: Funkcija ar parametriem

 // 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; )

Rezultāts

 Int numurs ir 5. Divkāršais skaitlis ir 5,5

Iepriekš minētajā programmā mēs izmantojām funkciju, kurai ir viens intparametrs un viens doubleparametrs.

Pēc tam mēs kā argumentus nododam num1 un num2. Šīs vērtības tiek saglabātas attiecīgi ar funkciju parametriem n1 un n2.

C ++ funkcija ar parametriem

Piezīme: Funkcijas izsaukšanas laikā nodoto argumentu tipam jāatbilst atbilstošajiem parametriem, kas noteikti funkcijas deklarācijā.

Atgriešanās paziņojums

Iepriekš minētajās programmās funkciju deklarācijā esam izmantojuši void. Piemēram,

 void displayNumber() ( // code )

Tas nozīmē, ka funkcija neatgriež nevienu vērtību.

Ir iespējams arī atgriezt vērtību no funkcijas. Lai to izdarītu, returnTypefunkciju deklarēšanas laikā mums jānorāda funkcija.

Pēc tam returnpaziņojumu var izmantot, lai atgrieztu vērtību no funkcijas.

Piemēram,

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

Šeit mums ir datu tips, intnevis void. Tas nozīmē, ka funkcija atgriež intvērtību.

Kods return (a + b);atgriež divu parametru summu kā funkcijas vērtību.

returnApgalvojums norāda, ka funkcija ir beigusies. Kods, kas returnatrodas funkcijas iekšpusē, netiek izpildīts.

3. piemērs: pievienojiet divus skaitļus

 // 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; )

Rezultāts

 100 + 78 = 178

Iepriekš minētajā programmā add()funkcija tiek izmantota divu skaitļu summas atrašanai.

Mēs nododam divus intburtniekus 100un 78izsaucot funkciju.

Funkcijas atgriezto vērtību mēs glabājam mainīgajā summā, un pēc tam to izdrukājam.

Funkcijas C ++ darbība ar atgriešanās paziņojumu

Ievērojiet, ka summa ir inttipa mainīgais . Tas ir tāpēc, ka atdeves vērtība add()ir intveida.

Funkcijas prototips

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

 Kvadrātsakne no 25 = 5

Šajā programmā sqrt()bibliotēkas funkcija tiek izmantota skaitļa kvadrātsaknes aprēķināšanai.

Funkcijas deklarācija sqrt()ir definēta cmathgalvenes failā. Tāpēc, #include lai izmantotu sqrt()funkciju, mums jāizmanto kods .

Lai uzzinātu vairāk, apmeklējiet C ++ standarta bibliotēkas funkcijas.

Interesanti raksti...