Dalam tutorial ini, Anda akan belajar membuat fungsi yang ditentukan pengguna dalam pemrograman C dengan bantuan contoh.
Fungsi adalah blok kode yang melakukan tugas tertentu.
C memungkinkan Anda untuk menentukan fungsi sesuai dengan kebutuhan Anda. Fungsi ini dikenal sebagai fungsi yang ditentukan pengguna. Sebagai contoh:
Misalkan, Anda perlu membuat lingkaran dan mewarnainya tergantung pada radius dan warnanya. Anda dapat membuat dua fungsi untuk mengatasi masalah ini:
createCircle()
fungsicolor()
fungsi
Contoh: Fungsi yang ditentukan pengguna
Berikut adalah contoh untuk menambahkan dua bilangan bulat. Untuk melakukan tugas ini, kami telah membuat yang ditentukan pengguna addNumbers()
.
#include int addNumbers(int a, int b); // function prototype int main() ( int n1,n2,sum; printf("Enters two numbers: "); scanf("%d %d",&n1,&n2); sum = addNumbers(n1, n2); // function call printf("sum = %d",sum); return 0; ) int addNumbers(int a, int b) // function definition ( int result; result = a+b; return result; // return statement )
Prototipe fungsi
Prototipe fungsi hanyalah deklarasi sebuah fungsi yang menentukan nama fungsi, parameter, dan tipe kembalian. Itu tidak mengandung fungsi tubuh.
Prototipe fungsi memberikan informasi kepada kompilator bahwa fungsi tersebut nantinya dapat digunakan dalam program.
Sintaks prototipe fungsi
returnType functionName (tipe1 argumen1, tipe2 argumen2,…);
Dalam contoh di atas, int addNumbers(int a, int b);
adalah prototipe fungsi yang memberikan informasi berikut ke kompilator:
- nama fungsinya adalah
addNumbers()
- jenis kembali dari fungsi tersebut
int
- dua argumen tipe
int
diteruskan ke fungsi
Prototipe fungsi tidak diperlukan jika fungsi yang ditentukan pengguna ditentukan sebelum main()
fungsi.
Memanggil suatu fungsi
Kontrol program ditransfer ke fungsi yang ditentukan pengguna dengan memanggilnya.
Sintaks pemanggilan fungsi
functionName (argument1, argument2,…);
Dalam contoh di atas, pemanggilan fungsi dilakukan menggunakan addNumbers(n1, n2);
pernyataan di dalam main()
fungsi.
Definisi fungsi
Definisi fungsi berisi blok kode untuk melakukan tugas tertentu. Dalam contoh kita, menambahkan dua angka dan mengembalikannya.
Sintaks definisi fungsi
returnType functionName (tipe1 argumen1, tipe2 argumen2,…) (// isi fungsi)
Ketika suatu fungsi dipanggil, kontrol program dipindahkan ke definisi fungsi. Dan, kompilator mulai menjalankan kode di dalam tubuh suatu fungsi.
Meneruskan argumen ke suatu fungsi
Dalam pemrograman, argumen mengacu pada variabel yang diteruskan ke fungsi. Dalam contoh di atas, dua variabel n1 dan n2 dilewatkan selama pemanggilan fungsi.
Parameter a dan b menerima argumen yang diteruskan dalam definisi fungsi. Argumen ini disebut parameter formal fungsi.
Jenis argumen yang diteruskan ke suatu fungsi dan parameter formal harus cocok, jika tidak, kompilator akan menampilkan kesalahan.
Jika n1 berjenis char, a juga harus berjenis char. Jika n2 bertipe float, variabel b juga harus bertipe float.
Sebuah fungsi juga bisa dipanggil tanpa memberikan argumen.
Pernyataan Pengembalian
Pernyataan return menghentikan eksekusi suatu fungsi dan mengembalikan nilai ke fungsi pemanggil. Kontrol program ditransfer ke fungsi panggilan setelah pernyataan return.
Dalam contoh di atas, nilai variabel hasil dikembalikan ke fungsi utama. Variabel jumlah dalam main()
fungsi diberi nilai ini.
Sintaks pernyataan return
kembali (ekspresi);
Sebagai contoh,
kembali a; kembali (a + b);
Jenis nilai yang dikembalikan dari fungsi dan jenis hasil yang ditentukan dalam prototipe fungsi dan definisi fungsi harus cocok.
Kunjungi halaman ini untuk mempelajari lebih lanjut tentang meneruskan argumen dan mengembalikan nilai dari suatu fungsi.