Langsung ke konten utama

Penulisan void main dan main pada Bahasa C

Pada materi ini akan dipelajari verbedaan antara 'void main()' dan 'main()' pada bahasa pemrograman C.

void main(){/*...*/}

Penulisan program seperti definisi yang dituliskan sebelumnya pada dasarnya tidak pernah ada pada C++, begitupun juga pada bahasa C. Perhatikan standar ISO C++ 3.6.1[2] atau standar ISO C 5.1.2.2.1. Dimana standar implementasi yang dipakai adalah

int main(){/*...*/}
dan
int main(int argc, char* argv[]){/*...*/}

Ada banyak versi dari fungsi main(), tetapi semuanya harus dikembalikan dengan nilai return tipe int. Nilai return int oleh fungsi main() adalah solusi bagi program untuk mengembalikan sebuah nilai menuju ke sistem yang memanggilnya. Pada sistem yang tidak menyediakan fasilitas pemanggilan, maka nilai return akan diabaikan, tetapi hal ini tidaklah membuat "void main()" menjadi sebagai acuan resmi pada C++ atapun pada C. Bahkan jika kompilator menerima nilai fungsi "void main()" maka akan tetap diabaikan.

Pada C++, fungsi main() membutuhkan statement yang tidak mengandung nilai return eksplisit. Pada kasus ini, nilai return adalah 0, yang artinya eksekusi program berhasil dilaksanakan. Contohnya:

//Penulisan void main() dan main() pada bahasa C

#include <iostream>

int main()

{

std::cout << "Program ini mengembalikan nilai 0 untuk tipe integer\n";

}

Catatan: meskipun ISO C++ maupun C99 tidak memungkinkan programmer untuk meninggalkan tipe deklarasi. Berbeda dengan C89 dan ARM C++, 'int' tidak mengasumsikan tipe mana yang hilang dalam pendeklarasian nilai. Karena itu:

#include <iostream>
main() {/*...*/}

bernilai error, karena tipe return dari fungsi main tidak ada.

Komentar

  1. Apa yang dimasuk dengan fungsi void main() dan fungsi int main()?

    BalasHapus
    Balasan
    1. Void main() memberitahukan kepada kompilator bahwa fungsi main() tidak akan mengembalikan nilai apapun, tetapi int main() menunjukkan bahwa kompilator akan mengembalikan nilai tipe integer dari fungsi main tersebut. Jika program bahasa C yang dibuat adalah tipe yang sederhana, dan tidak akan berhenti sebelum tercara baris akhir dari kode, atau kode program bebas dari kesalahan atau error, maka dapat digunakan fungsi void main().

      Hapus
  2. Apakah fungsi void main() adalah fungsi standar yang terdapat pada bahasa pemrograman C?

    BalasHapus
    Balasan
    1. Apakah fungsi void main() adalah fungsi standar yang terdapat pada pemrograman bahasa C?

      Jawabannya dalah tidak, Prototipe dari fungsi main adalah int main() dengan argumen baris perintah yang bersifat opsional antara argc atau argv. Tipe data Int yang terdapat pada fungsi main() merupakan cara program mengembalikan nilai ke sistem yang memanggilnya sebelumnya.

      Hapus
  3. Apa tujuan penggunaan fungsi void dalam bahasa C, padahal fungsi tersebut tidak dapat mengembalikan nilai apapun ke dalam fungsi pemanggil?

    BalasHapus
    Balasan
    1. Dalam pemrograman komputer, ketika suatu fungsi memiliki tipe data void, maka fungsi tersebut akan digunakan sebagai tipe data pengembalian dari fungsi itu sendiri, atau dengan kata lain fungsi tersebut tidak mengembalikan nilai apapun kepada fungsi pemanggilnya sebelumnya.
      Jik void muncul dalam suatu deklarasi pointer, maka hal ini menentukan apakah pointer tersebut bersifat universal atau tidak.

      Jika void digunakan dalam suatu parameter fungsi, maka void menunjukkan bahwa fungsi tersebut tidak mengembalikan nilai apapun kepada fungsi pemanggilnya.

      Hapus

Posting Komentar

Respon komentar 7 x 24 jam, so please be patient :D