Jawaban dan komentar lain menyebut beberapa dari banyak cara bahwa ini adalah pertanyaan yang mengerikan, menyesatkan, dan ditulis dengan buruk. Tetapi ada masalah lain yang belum diidentifikasi orang lain. Pertanyaannya adalah:
Tanda titik koma (';') tidak diperlukan setelah deklarasi fungsi. Benar atau salah.
OK, mari kita lihat deklarasi fungsi:
int func(); /* */
/* ^ */
/* | */
/* That whitespace is "after the function declaration". */
Semuanya adalah deklarasi . Deklarasi tidak int func()
dan kemudian diikuti oleh a ;
. Deklarasi int func();
kemudian diikuti oleh spasi putih.
Jadi, pertanyaannya adalah: apakah titik koma diperlukan setelah deklarasi ? Tentu saja tidak. Deklarasi tersebut sudah memiliki titik koma di dalamnya yang mengakhiri itu. Titik koma setelah deklarasi tidak ada gunanya. Sebaliknya, int func(); ;
akan menjadi titik koma setelah deklarasi fungsi .
Pertanyaan itu hampir pasti dimaksudkan untuk mengajukan pertanyaan "benar atau salah: token terakhir dalam deklarasi fungsi selalu merupakan titik koma" Tapi itu bukan pertanyaan yang mereka tulis, karena penulis kuis itu tidak berpikir jernih tentang masalah tersebut.
Saran saya adalah untuk menghindari kuis bahasa pemrograman sama sekali. Mereka sangat mengerikan.
Fakta yang menyenangkan, sementara kita membahasnya. Dalam C #, ini semua legal:
class C {}
class D {};
struct E {}
struct F {};
Dalam C #, deklarasi kelas atau struct dapat diakhiri dengan tanda titik koma, atau tidak, sesuai kebijakan Anda. Fitur kecil yang aneh ini ditambahkan untuk kepentingan pemrogram C / C ++ yang datang ke C # yang memilikinya di ujung jari mereka bahwa deklarasi tipe diakhiri dengan titik koma; tim desain tidak ingin menghukum mereka karena memiliki kebiasaan ini. :-)