Pemanggilan Fungsi Sebelum Deklarasi pada Bahasa C
![]() |
Fungsi Sebelum Deklarasi Bahasa C |
#include <stdio.h>
int main(void)
{
// Fungsi funt() tidak
// dideklarasikan.
printf("%c\n", fun());
return 0;
}
char fun()
{
return 'G';
}
Penjelasan: Jika fungsi char fun() pada contoh sebelumnya didefinisikan kemudian, setelah fungsi main, dan dilakukan pemanggilan statement. Karena hal tersebut, maka proses kompilasi gagal dilakukan, karena kompilator mengasumsikan bahwa tipe return-nya adalah integer secara default. Sedangkan pada bagian deklarasi fungsi, jika tipe return-nya tidak bersesuaian dengan tipe integer, maka kompilator akan memberikan pesan error.
#include <stdio.h>
int fun()
{
return 10;
}
int main(void)
{
// Fungsi fun() tidak
// dideklarasikan.
printf("%d\n", fun());
return 0;
}
Penjelasan: Kompilator tidak akan mengasumsikan apapun tentang nilai parameter. Kompilator tidak akan mampu bekerja untuk menampilkan pemeriksaan waktu kompilasi dari tipe argumen ketika fungsi diterapkan ke beberapa jenis argumen, dimana hal ini akan menyebabkan permasalahan.
Contoh: Program berikut akan dikompilasi secara baik menggunakan GCC dan akan mengasilkan nilai sisa sebagai nilai output.
#include <stdio.h>
int main (void)
{
printf("%d", sum(10, 5));
return 0;
}
int sum (int b, int c, int a)
{
return (a+b+c);
}
Penjelasan: Terdapat kesalahpahaman bahwa kompilator akan mengasumsikan nilai parameter input juga adalah nilai integer. Karena kompilator mengasumsikan nilai input parameter adalah tipe integer, maka program sebelumnya akan mengakibatkan proses gagal kompilasi.
Catatan: Selalu direkomendasikan untuk mendeklarasikan sebuah fungsi sebelum fungsi tersebut digunakan, sehingga tidak mengakibatkan munculnya input atau hasil yang tidak terduga ketika program tersebut dikompilasi menggunakan kompilator.
- Fungsi Nested Bahasa C Kompilator dan GCC [klik]
- Teknik Melewatkan Parameter Bahasa C [klik]
- Fungsi Pangkat pada Bahasa C [klik]
- Fungsi TOLOWER pada Bahasa C [klik]
- Fungsi Waktu Bahasa C Beserta Penjelasannya [klik]
- Pengenalan Pointer Bahasa C Serta Penjelasannya [klik]
- Konsep Pointer Ke Pointer Bahasa C Beserta Penjelasannya [klik]
Kenapa fungsi harus dipanggil sebelum deklarasi?
BalasHapusKarena klo fungsi dipanggil setelah deklarasi berarti fungsi tersebut tidak dipanggil sebelum deklarasi.
HapusKenapa fungsi harus dipanggil sebelum deklarasi, ini adalah contoh pertanyaan bani israil.
BalasHapusHey kamu, dasar wahyuni, pergi kamu dari tanah arab.
HapusApa yang dimaksud dengan proses pemanggilan fungsi bahasa C?
BalasHapusProses pemanggilan fungsi adalah proses mengaktifkan suatu fungsi pada program untuk melakukan instruksi tertentu pada komputer.
Hapus