Ada beberapa cara menggunakan fungsi dalam bahasa C. Kita bisa menggunakan fungsi dengan atau tanpa menentukan tipe. Kemudian kita juga bisa menggunakan fungsi dengan atau tanpa argumen/parameter. Dan yang terakhir kita juga bisa menggunakan fungsi dengan atau tanpa menghasilkan nilai balik.
Sebagai pengingat, Fungsi dalam bahasa C adalah sekumpulan kode yang ditaruh dalam sebuah blok dan dibuat untuk menjalankan tugas khusus. Salah satu tujuan dari penggunaan fungsi dalam pemrograman seperti pada bahasa C adalah untuk membuat program lebih terstruktur dan efisien sehingga program tersebut mudah dipahami atau dibaca alur programnya.
Cara menggunakan fungsi tanpa menentukan tipe dan tidak menghasilkan nilai balik
Dengan cara ini kita membuat fungsi hanya untuk mengerjakan sebuah tugas saja tanpa menghasilkan nilai balik. Jadi karena tidak ada nilai balik maka penentu tipe fungsi tidak perlu diisi. Sebagai gantinya didepan nama fungsi kita taruh keyword void sebagai tanda sebuah fungsi tidak memiliki tipe. Fungsi jenis ini biasanya disebut juga dengan prosedur.
Contoh fungsi tanpa tipe dan tidak menghasilkan nilai balik
#include <stdio.h> #include <getch.h> #include <stdlib.h>
#define ESC 27
void tampilkan_pesan(char huruf);
int main ()
{
char huruf;
puts (“TEKAN SEMBARANG KEYBOARD”);
puts (“TEKAN ESC UNTUK KELUAR”);
for(;;)
{
huruf=getch();
if(huruf == ESC)
exit(0);
else
tampilkan_pesan(huruf);
}
return 0;
}
void tampilkan_pesan(char huruf)
{
printf(“anda menekan tombol %c n”,huruf);
}
Pada contoh diatas kita membuat fungsi tampilkan pesan yang bertugas menampilkan pesan penekanan tombol beserta huruf yang ditekan. Fungsi ini tidak mempunyai tipe dan tidak menghasilkan nilai balik sehingga ditulis dengan awalan void.
Cara kerja dari program diatas adalah program akan secara kontinyu mengecek penekanan tombol dan jik ada yang ditekan maka akan dijalankan fungsi tampilkan_pesan. Program akan keluar jika user menekan tombol ESC.
Cara menggunakan fungsi dengan menentukan tipe dan menghasilkan nilai balik
Cara ini berbeda dari cara sebelumnya karena kita akan membuat sebuah fungsi yang akan menghasilkan nilai untuk dipakai untuk dipakai dalam proses program selanjutnya. karena menghasilkan nilai maka kita perlu menentukan tipe data dari fungsi tersebut. Tipe data sebuah fungsi bisa menggunakan tipe data standar bahasa C seperti int, char, float dan string.
Contoh fungsi dengan tipe dan menghasilkan nilai balik
#include <stdio.h>
int hitung_luas(int panjang, int lebar); //deklarasi fungsi
int main()
{
int panjang = 5;
int lebar =7;
int luas;
luas = hitung_luas(panjang,lebar);
printf(“%d n”,luas);
return 0;
}
int hitung_luas(int panjang, int lebar)
{
int luas;
luas = panjang * lebar;
return(luas);
}
Pada contoh diatas kita membuat fungsi hitung_luas() dengan tipe integer yang menghasilkan nilai balik dari perhitungan luas sebuah persegi panjang. Nilai balikan fungsi hitung_luas() dikirim melalui fungsi return.
Cara menggunakan fungsi tanpa argumen parameter
Pada kedua contoh diatas kita menggunakan fungsi dengan argumen parameter sebagai masukan. Misalnya pada fungsi tampilkan_pesan() kita menggunakan parameter huruf dan pada fungsi hitung_luas() kita menggunakan parameter panjang dan lebar.
Dalam bahasa C, kita juga bisa menggunakan fungsi tanpa harus menyertakan argumen parameter. Hal ini dilakukan jika kita menggunakan sebuah fungsi tanpa perlu masukan, misalnya fungsi untuk setting default parameter port pada mikrokontroler.
Contoh fungsi tanpa argumen parameter
#include <stdio.h>
void set_default();
int suhu, waktu, jeda;
int main ()
{
set_default();
printf(“SUHU = %d n”,suhu);
printf(“TIMER = %d n”,waktu);
printf(“JEDA = %d n”,jeda);
return 0;
}
void set_default()
{
suhu = 50;
waktu = 10;
jeda = 2;
}
Pada contoh diatas kita membuat fungsi tanpa argumen dengan nama set_default(). Fungsi ini dibuat untuk mengeset nilai default parameter sebuah mesin pemanas seperti suhu, waktu dan jeda. Karena hanya menjalankan tugas maka fungsi set_default() tidak memerlukan argumen parameter sebagai masukan.
Itulah beberapa cara menggunakan fungsi dalam bahasa C. Pada tulisan selanjutnya insyaAllah akan dijelaskan tentang prototipe fungsi serta jenis-jenis parameter dalam fungsi.