Fungsi Bahasa C Beserta Penjelasannya
Sebelum memahami lebih dalam materi tentang Fungsi Bahasa C Beserta Penjelasannya, terlebih dahulu pelajari materi tentang: Input Nilai Rentang Pada Switch Case Statement Bahasa C, Keluar dari Proses Looping Bahasa C Menggunakan Break Statement, dan Melompati Proses Looping Bahasa C Menggunakan Continue Statement.
Contoh: Berikut adalah program sederhana yang menggunakan Bahasa C untuk mendemonstrasikan penggunaan fungsi.
#include <stdio.h>
// Contoh fungsi yang
// mengambil dua nilai
// parameter 'x' dan 'y'
// sebagai nilai input dan
// mengembalikan nilai
// maksimal dari dua input
// nilai tersebut.
int max(int x, int y)
{
if (x > y)return x;
else return y;
}
// Fungsi main tidak menerima
// nilai parameter apapun dan
// mengembalikan nilai
// integer.
int main(void)
{
int a = 10, b = 20;
// Memanggil fungsi untuk
// menemukan nilai maksimal
// dari 'a' dan 'b'.
int m = max(a, b);
printf("m is %d", m);
return 0;
}
Kegunaan Fungsi pada Bahasa C
Fungsi membantu programmer untuk mengurangi proses pembuatan kode program, serta mengurangi kerumitan dalam proses pembuatannya. Jika suatu fungsi Bahasa C ditampilkan atau digunakan pada beberapa perangkat lunak yang lain. Oleh karena itu, ketimbang melakukan penulisan kode program yang sama pada perangkat lunak yang lain secara berulang-ulang, jauh lebih efisien jika menggunakan satu fungsi saja, dan kemudian memanggil fungsi yang telah dibuat tersebut pada program atau perangkat lunak lain yang berbeda dengan penugasaan yang sama. Fungsi Bahasa C juga membantu dalam proses perawatan ketika dilakukan perubahan pada satu tempat atau bagian tertentu pada fungsi program.Fungsi pada Bahasa C membuat kode lebih terstruktur, dimana beberapa baris program dapat ditulis hanya menggunakan satu fungsi saja. Fungsi Bahasa C juga membuat program menjadi lebih mudah untuk dibaca dan digunakan, jika kode-kode program tersebut dibagi ke dalam fungsi-fungsi tertentu. Fungsi bahasa C juga menyediakan bentuk abstraksi, seperti penggunaan fungsi library yang dapat digunakan tanpa haris mengkhawatirkan cara kerja internal dari fungsi library yang dipanggil tersebut.
Pendeklarasian Funsi
Proses pendeklarasian fungsi memberitahukan kompilator mengenai suatu nilai dari parameter fungsi tertentu seperti tipedata dari parameter, dan tipe return. Mengambil nama parameter dalam deklarasi fungsi adalah bersifat opsional pada proses deklarasi fungsi, tetapi hal tersebut juga dibutuhkan untuk proses pendefinisian. Berikut diperlihatkan beberapa contoh deklarasi fungsi.Sintak:
- Fungsi untuk mengambil dua nilai nteger sebagai nilai paramter dan mengembalikan nilai sebagai nilai integer: int max(int, int);
- Fungsi untuk mengambil nilai pointer int dan variabel int sebagai nilai parameter dan mengambalikan sebuah nilai pointer dengan tipe int: int *swap(int*,int);
- Fungsi untuk mengambil sebuah karakter parameter dan mengembalikan nilai referensi variabel: char *call(char b);
- Fungsi untuk mengambil sebuah nilai char dan nilai integer sebagai parameter, dan mengembalikan nilainya sebagai nilai integer: int fun(char, int);
Catatan: Selalu direkomendasikan untuk mendeklarasikan sebuah fungsi sebelum fungsi tersebut digunakan pada program Bahasa C.
Pada bahasa C, dapat dilakukan proses pendeklarasian dan pendefinisian suatu fungsi pada lokasi yang sama. Tidak hanya itu, pada Bahasa C juga dimungkinkan untuk melakukan pendeklarasian dan pendefinisian fungsi secara terpisah, ini umumnya dibutuhkan pada kondisi dimana fungsi library sedang digunakan, yang membuat fungsi library dideklarasikan pada file header dan didefinisikan pada file library.
Parameter melewatkan fungsi:
- Parameter yang melewatkan suatu fungsi disebut parameter aktual.
- Parameter aktual yang diterima disebut sebagai parameter formal.
Terdapat dua cara umum yang digunakan untuk melewatkan nilai parameter:
- Dilewatkan Menggunakan Value: pada proses ini, nilai aktual parameter akan diduplikasi ke parameter fungsi formal dan dua tipe parameter akan disimpan pada lokasi memori yang berbeda. Sehingga setiap perubahan nilai yang terjadi tidak akan memengaruhi nilai fungsi didalamnya karena nilai tersebut tidak direpleksikan ke parameter aktual dari pemanggilnya.
- Dilewatkan Menggunakan Referensi: pada proses ini, parameter formal dan parameter aktual merujuk pada suatu lokasi penyimpanan yang sama, sehingga setiap perubahan yang terjadi di dalam fungsi akan direpleksikan hasilnya ke parameter aktual oleh pemanggilnya.
Catatan: Nilai parameter adalah selalu dilewatkan oleh value pada Bahasa C.
Contoh: Nilai dari x tidak dimodifikasi menggunakan fungsi fun().
#include <stdio.h>
void fun(int x)
{x = 30;}
int main(void)
{
int x = 20;
fun(x);
printf("x = %d", x);
return 0;
}
Output:x = 20
Namun demikian, pada bahasa, dapat pula digunakan pointer untuk mendapatkan nilai efek dari proses melewatkan suatu fungsi menggunakan referensi.
Fungsi fun() membutuhkan sebuah pointer ptr untuk menuju ke nilai integer atau alamat dari nilai integer, yang digunakan untuk memodifikasi nilai dari nilai variabel yang telah dituju oleh pointer ptr. Operator dereference '*' digunakan sebagai akses untuk menuju ke nilai yang ini dilakukan perubahan nilainya. Pada statement '*ptr = 30', mengindikasikan bahwa nilai pada alamat ptr telah dibuah menjadi 30. Sendangkan operator alamat '&' digunakan untuk mendapatkan alamat dari sebuah variabel dengan tipe data apapun. Pada fungsi, juga dilakukan pemanggilan statement 'fun(&x)', yang berisi nilai dari alamat x untuk dilewatkan ke nilainya sehingga variabel x dapat dilakukan modifikasi atau perubahan nilai variabel melalui alamat yang telah dipanggil sebelumnya.
Contoh:
# include <stdio.h>
void fun(int *ptr)
{*ptr = 30;}
int main()
{
int x = 20;
fun(&x);
printf("x = %d", x);
return 0;
}
Output:x = 30
Beberapa hal penting tentang fungsi bahasa C:
- Setiap program Bahasa C memiliki sebuah fungsi yang disebut fungsi main(), yang akan dipanggil oleh sistem operasi ketika user sedang menjalankan program.
- Setiap fungsi pada Bahasa C akan mengembalikan nila tipe return tertentu. Jika sebuah fungsi tidak mengembalikan nilai apapaun, maka fungsi yang digunakan adalah fungsi void. Tidak hanya itu, jika tipe return pada fungsi adalah void, user tetap dapat menggunakan statement return pada bagian body definisi fungsi, namun tidak diserta pendefinisi tipe konstanta, variabel, dan lain sebagainya. Dengan fungsi void, hanya dengan memanggil nilai return pada fungsi tersebut, maka statement akan mensimbolkan proses terminasi dari fungsi.
- Pada bahasa C, fungsi dapat mengembalikan tipe nilai apapun kecuali nilai array dan nilai fungsi itu sendiri. Namun batasan ini dapat diatasi dengan cara mengembalikan nilai pointer ke array, atau pointer ke fungsi.
- Daftar parameter kosong pada bahasa C bermakna bahwa daftar parameter tidak spesifik dan fungsi dapat dipanggil dengan parameter apapun. Pada bahasa C, tidak direkomendasikan untuk mendeklarasikan fungsi seperti fun(), dimana proses pendeklarasian tanpa menggunakan nilai parameter diharuskan menggunakan fungsi "void fun(void)". Catatan lain pula, bahwa pada C++, daftar kosong berarti sebuah fungsi hanya dapat dipanggil tanpa menggunakan nilai parameter apapun, dimana pada bahasa C++, kedua nilai void fun() dan void fun(void) adalah bernilai sama.
- Jika pada program bahasa C terdapat sebuah fungsi yang dipanggil sebelum proses pendeklarasian fungsi itu sendiri maka kompilator secara otomatis akan mengasumsikan bahwa deklarasi dari fungsi pada proses tersebut adalah sebagai berikut.
int function name(); Pada kondisi tersebut, jika nilai tipe return dari fungsi adalah berbeda dari nilai INT, maka kompilator akan menampilkan pesan error pada layar monitor.
Fungsi Main: Fungsi Main atau fungsi utama pada bahasa C merupakan sebuah fungsi spesial, dimana setiap rogram yang mengandung fungsi tersebut, akan dianggap sebagai titik acuan awal server untuk mengekskusi program.
Tipe Fungsi:
- Fungsi main tanpa nilai parameter: int main() {.....; return 0;}
- Fungsi main dengan nilai parameter: int main(int argc, char * const argv[]) {.....; return 0;}
Tujuan dari penggunaan nilai parameter pada fungsi main adalah memberikan suatu ijin untuk melakukan proses input dari command line. Ketika digunakan fungsi main beserta nilai parameter, maka proses dari fungsi tersebut akan menyimpan kelompok karakter yang dipisahkan tanda koma setelah nama program elemen pada array yang bernama argv. Ketika fungsi main telah mengembalikan nilai tipe dari int, maka program akan selalu mengembalikan nilai statement ke bagian kode. Nilai yang telah dikembalikan tersebut digunakan untuk menginformasikan program yang dipanggil tentang hasil dari eksekusi program. Jika nilai yang dikembalikan dari fungsi main adalah 0, maka hal tersebut mengindikasikan bahwa tidak terdapat masalah apapaun pada eksekusi progmram Bahas C.
Fungsi dengan Tipe Pengembalian (Return Type)
Fungsi Tanpa Tipe Pengembalian (Void Function)
Parameter dan Argumen pada Fungsi
Fungsi Rekursif
Fungsi dengan Parameter Berdasarkan Tipe Data
Manfaat Modularitas dalam Penggunaan Fungsi
Fungsi Standar dan Fungsi Buatan Pengguna
Fungsi Sebagai Dasar Abstraksi dalam Pemrograman
- Perintah Evaluasi Fungsi Parameter Bahasa C
- Fungsi Overloading Bahasa C Beserta Penjelasannya
- Pengembalian Nilai Fungsi Ganda Bahasa C
- Peran Fungsi Prototype Bahasa C Beserta Penjelasannya
- Fungsi Static Bahasa C dan Penjelasannya
- Fungsi EXIT, ABORT, dan ASSERT Bahasa C
- Menampilkan Tipe Return Secara Implisit pada Bahasa C
5 komentar untuk "Fungsi Bahasa C Beserta Penjelasannya"
Hubungi admin melalui Wa : +62-896-2414-6106
Respon komentar 7 x 24 jam, mohon bersabar jika komentar tidak langsung dipublikasi atau mendapatkan balasan secara langsung.
Bantu admin meningkatkan kualitas blog dengan melaporkan berbagai permasalahan seperti typo, link bermasalah, dan lain sebagainya melalui kolom komentar.
- Ikatlah Ilmu dengan Memostingkannya -
- Big things start from small things -
Apa yang dimaksud dengan fungsi pada Bahasa C?
BalasHapusFungsi pada bahasa C merupakan blok bangunan dasar dari suatu program.
HapusFungsi merupakan sekumpulan pernyataan yang diapit dalam tanda kurung kurawal yang mengambil input, melakukan komputasi, dan menyediakan output yang dihasilkan.
HapusFungsi pada bahasa C dapat dipanggil berkali-kali, sehingga memungkinkan penggunaan kembali dan modularitas dalam pemrograman C.
HapusFungsi merupakan blok kode program yang hanya berjalan ketika dipanggil. Fungsi dapat digunakan untuk meneruskan data, yang dikenal sebagai parameter, ke dalam suatu fungsi. Fungsi digunakan untuk melakukan tindakan tertentu.
Hapus