Dalam tutorial ini, kita akan belajar mengenai ekspresi fungsi dan fungsi C ++ dengan bantuan contoh.
Fungsi adalah sekatan kod yang melakukan tugas tertentu.
Katakan kita perlu membuat program untuk membuat bulatan dan mewarnainya. Kita boleh membuat dua fungsi untuk menyelesaikan masalah ini:
- fungsi untuk melukis bulatan
- fungsi untuk mewarnai bulatan
Membahagi masalah yang kompleks kepada potongan yang lebih kecil menjadikan program kita mudah difahami dan dapat digunakan semula.
Terdapat dua jenis fungsi:
- Fungsi Perpustakaan Piawai: Ditentukan dalam C ++
- Fungsi yang ditentukan pengguna: Dicipta oleh pengguna
Dalam tutorial ini, kita akan memfokuskan kebanyakan fungsi yang ditentukan pengguna.
C ++ Fungsi yang ditentukan pengguna
C ++ membolehkan pengaturcara menentukan fungsi mereka sendiri.
Fungsi kumpulan pengguna menetapkan kod untuk melakukan tugas tertentu dan kumpulan kod tersebut diberi nama (pengecam).
Apabila fungsi dipanggil dari mana-mana bahagian program, semuanya melaksanakan kod yang ditentukan dalam badan fungsi.
Pernyataan Fungsi C ++
Sintaks untuk menyatakan fungsi adalah:
returnType functionName (parameter1, parameter2,… ) ( // function body )
Berikut adalah contoh pengisytiharan fungsi.
// function declaration void greet() ( cout << "Hello World"; )
Di sini,
- nama fungsi adalah
greet()
- jenis kembali fungsi adalah
void
- tanda kurung kosong bermaksud ia tidak mempunyai parameter
- badan fungsi ditulis di dalam
()
Catatan: Kami akan belajar tentang returnType
dan parameters
kemudian dalam tutorial ini.
Memanggil Fungsi
Dalam program di atas, kami telah menyatakan fungsi yang dinamakan greet()
. Untuk menggunakan greet()
fungsi tersebut, kita perlu memanggilnya.
Inilah cara kita memanggil greet()
fungsi di atas .
int main() ( // calling a function greet(); )

Contoh 1: Paparkan Teks
#include using namespace std; // declaring a function void greet() ( cout << "Hello there!"; ) int main() ( // calling the function greet(); return 0; )
Pengeluaran
Apa khabar di sana!
Parameter Fungsi
Seperti disebutkan di atas, fungsi dapat dinyatakan dengan parameter (argumen). Parameter adalah nilai yang dilewatkan ketika menyatakan fungsi.
Sebagai contoh, mari kita pertimbangkan fungsi di bawah:
void printNum(int num) ( cout << num; )
Di sini, int
num pemboleh ubah adalah parameter fungsi.
Kami memberikan nilai ke parameter fungsi sambil memanggil fungsi.
int main() ( int n = 7; // calling the function // n is passed to the function as argument printNum(n); return 0; )
Contoh 2: Fungsi dengan Parameter
// 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; )
Pengeluaran
Nombor int adalah 5 Nombor dua ialah 5.5
Dalam program di atas, kami telah menggunakan fungsi yang memiliki satu int
parameter dan satu double
parameter.
Kami kemudian memasukkan num1 dan num2 sebagai hujah. Nilai-nilai ini disimpan oleh parameter fungsi masing-masing n1 dan n2.

Catatan: Jenis argumen yang dilalui ketika memanggil fungsi mesti sesuai dengan parameter yang sesuai yang ditentukan dalam deklarasi fungsi.
Penyata Pemulangan
Dalam program di atas, kami telah menggunakan kekosongan dalam deklarasi fungsi. Sebagai contoh,
void displayNumber() ( // code )
Ini bermaksud fungsi tidak mengembalikan nilai.
Anda juga boleh mengembalikan nilai dari fungsi. Untuk ini, kita perlu menentukan returnType
fungsi semasa deklarasi fungsi.
Kemudian, return
pernyataan itu dapat digunakan untuk mengembalikan nilai dari fungsi.
Sebagai contoh,
int add (int a, int b) ( return (a + b); )
Di sini, kita mempunyai jenis data int
dan bukannya void
. Ini bermaksud bahawa fungsi mengembalikan int
nilai.
Kod return (a + b);
mengembalikan jumlah kedua parameter sebagai nilai fungsi.
The return
kenyataan menunjukkan bahawa majlis itu telah berakhir. Sebarang kod selepas return
di dalam fungsi tidak dijalankan.
Contoh 3: Tambah Dua Nombor
// 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; )
Pengeluaran
100 + 78 = 178
Dalam program di atas, add()
fungsi digunakan untuk mencari jumlah dua nombor.
Kami melewati dua int
literal 100
dan 78
sambil memanggil fungsi.
Kami menyimpan nilai fungsi yang dikembalikan dalam jumlah berubah, dan kemudian kami mencetaknya.

Perhatikan bahawa jumlahnya adalah pemboleh ubah int
jenis. Ini kerana nilai pulangan add()
adalah int
jenis.
Prototaip Fungsi
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
Akar kuasa dua 25 = 5
Dalam program ini, sqrt()
fungsi perpustakaan digunakan untuk mengira punca kuasa dua nombor.
Perisytiharan fungsi sqrt()
ditentukan dalam cmath
fail tajuk. Itulah sebabnya kita perlu menggunakan kod #include
untuk menggunakan sqrt()
fungsi tersebut.
Untuk mengetahui lebih lanjut, lawati fungsi Perpustakaan Standard C ++.