C ++ függvény (példákkal)

Ebben az oktatóanyagban példák segítségével megismerhetjük a C ++ függvényt és a funkciókifejezéseket.

A függvény egy kódblokk, amely egy adott feladatot hajt végre.

Tegyük fel, hogy létre kell hoznunk egy programot egy kör létrehozásához és színezéséhez. Két funkciót hozhatunk létre a probléma megoldására:

  • függvény a kör megrajzolásához
  • a kör színezésére szolgáló funkció

Ha egy összetett problémát kisebb darabokra osztunk, a programunk könnyen érthetővé és újrafelhasználhatóvá válik.

Kétféle funkció létezik:

  1. Standard könyvtárfunkciók: Előre definiált C ++ nyelven
  2. Felhasználó által definiált funkció: Felhasználók által létrehozott

Ebben az oktatóanyagban leginkább a felhasználó által definiált funkciókra fogunk összpontosítani.

C ++ Felhasználó által definiált függvény

A C ++ lehetővé teszi a programozó számára, hogy meghatározza saját funkcióját.

A felhasználó által definiált függvény kódot csoportosít egy adott feladat végrehajtásához, és az adott kódcsoport nevet (azonosítót) kap.

Amikor a függvényt a program bármely részéről meghívják, mindez végrehajtja a függvény törzsében meghatározott kódokat.

C ++ funkciónyilatkozat

A függvény deklarálásának szintaxisa:

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

Itt van egy példa a függvény deklarációjára.

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

Itt,

  • a függvény neve greet()
  • a függvény visszatérési típusa void
  • az üres zárójel azt jelenti, hogy nincs paramétere
  • a függvénytest be van írva ()

Megjegyzés: Mi lesz megismerni returnTypeés parameterskésőbb ez a bemutató.

Funkció hívása

A fenti programban deklaráltunk egy nevű függvényt greet(). A greet()függvény használatához meg kell hívnunk.

Így hívhatjuk a fenti greet()függvényt.

 int main() ( // calling a function greet(); )
Hogyan működik a Funkció C ++ nyelven?

1. példa: Szöveg megjelenítése

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

Kimenet

 Szia!

Funkcióparaméterek

Mint fent említettük, egy függvény paraméterekkel (argumentumokkal) deklarálható. A paraméter egy olyan érték, amelyet egy függvény deklarálásakor adunk át.

Vegyük például figyelembe az alábbi függvényt:

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

Itt a intnum változó a függvény paraméter.

Értéket adunk át a function paraméternek, miközben meghívjuk a függvényt.

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

2. példa: Funkció a paraméterekkel

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

Kimenet

 Az int szám 5 A kettős szám 5.5

A fenti programban egy olyan függvényt használtunk, amelynek egy intés egy doubleparamétere van.

Ezután argumentumként adjuk át a num1 és a num2 elemeket. Ezeket az értékeket az n1, illetve az n2 függvényparaméterek tárolják.

C ++ függvény paraméterekkel

Megjegyzés: A függvény meghívásakor átadott argumentumok típusának meg kell egyeznie a függvény deklarációjában meghatározott megfelelő paraméterekkel.

Visszatérési nyilatkozat

A fenti programokban az void-ot használtuk a függvénydeklarációban. Például,

 void displayNumber() ( // code )

Ez azt jelenti, hogy a függvény nem ad vissza értéket.

Lehetséges egy függvény értékét is visszaadni. Ehhez meg kell adnunk a returnTypefüggvény deklarációja során a függvényt.

Ezután az returnutasítás felhasználható egy függvény értékének visszaadására.

Például,

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

Itt van az adattípus inthelyett void. Ez azt jelenti, hogy a függvény intértéket ad vissza .

A kód return (a + b);a két paraméter összegét adja vissza függvényértékként.

Az returnutasítás azt jelzi, hogy a függvény lejárt. A returnfüggvényen belüli kódok nem kerülnek végrehajtásra.

3. példa: Két szám hozzáadása

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

Kimenet

 100 + 78 = 178

A fenti programban a add()függvény két szám összegének megkeresésére szolgál.

intElhaladunk két literálon 100és 78a függvény hívása közben.

A függvény visszaadott értékét az összeg változóban tároljuk, majd kinyomtatjuk.

A C ++ függvény működése return utasítással

Vegye figyelembe, hogy az összeg egy inttípusú változó . Ez azért van, mert a visszatérési értéke add()van a inttípus.

Funkció prototípus

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

 25 = 5 négyzetgyöke

Ebben a programban a sqrt()könyvtár függvényt használjuk egy szám négyzetgyökének kiszámításához.

A funkció deklarációja sqrt()a cmathfejlécfájlban van meghatározva . Ezért kell használnunk a kódot #include a sqrt()függvény használatához .

További információért keresse fel a C ++ Standard Library funkciókat.

érdekes cikkek...