Dalam bahasa pemrograman, terdapat 2 "tempat" untuk menyimpan suatu nilai, yakni konstanta dan variabel. Pada tutorial kali ini kita akan bahas Cara Pembuatan Konstanta dalam Bahasa C terlebih dahulu.
Pengertian Konstanta dalam Bahasa Pemrograman C
Konstanta adalah sebuah tempat atau container dari suatu nilai. Sesuai dengan namanya, nilai dari konstanta bersifat tetap (konstan) dan tidak bisa diubah sepanjang program berjalan.
Jika di dalam kode program kita ingin mengubah nilai ini, harus menggunakan variabel yang akan dipelajari dalam tutorial selanjutnya.
Cara Membuat Konstanta C dengan Perintah "#define"
Untuk membuat konstanta dalam bahasa C terdapat 2 cara, yakni menggunakan keyword #define dan menggunakan keyword const. Kita akan bahas dengan perintah #define terlebih dahulu
Jika ingin membuat konstanta dengan keyword #define, konstanta ini ditulis sebelum main(). Berikut contoh cara pembuatan konstanta menggunakan #define:
#include <stdio.h> #define PANJANG 8 #define LEBAR 5 int main(void) { printf("Panjang = %d",PANJANG); printf("\n"); printf("Lebar = %d",LEBAR); printf("\n"); printf("Luas (panjang*lebar) = %d",PANJANG*LEBAR); printf("\n"); return 0; }
Disini saya membuat 2 buah konstanta, yakni PANJANG dan LEBAR. Masing-masing berisi nilai 8 dan 5. Perintah ini harus ditulis sebelum int main(void).
Format pembuatan konstanta menggunakan perintah #define adalah:
#define nama_konstanta nilai_konstanta
Dalam kode program diatas, perintah #define PANJANG 8 artinya saya membuat konstanta bernama PANJANG yang bernilai 8. Sedangkan perintah #define LEBAR 5 artinya saya membuat konstanta bernama LEBAR yang bernilai 5.
Di bagian program utama, yakni di dalam int main(void), nilai dari masing-masing konstanta ditampilkan dengan perintah printf.
Tanda %d di dalam perintah printf digunakan untuk menampilkan angka bulat. Angka yang ingin ditampilkan berada di akhir perintah printf, yakni berupa sebuah konstanta.
Perintah printf("\n") dipakai untuk membuat karakter new line (baris baru). Fungsinya supaya baris berikutnya tampil di baris baru. Tanpa perintah ini, teks akan disambung terus ke kanan.
Lebih jauh tentang cara penggunaan perintah printf akan kita bahas dalam tutorial tersendiri. Untuk saat ini silahkan fokus ke cara pembuatan konstanta PANJANG dan LEBAR. di baris 3 dan 4.
Aturan Penamaan Konstanta
Aturan penamaan konstanta sama seperti identifier lain yang sudah kita bahas pada tutorial: Aturan Dasar Penulisan Kode Program Bahasa C.
Namun menjadi kebiasaan mayoritas programmer untuk membuat nama konstanta menggunakan HURUF BESAR, agar mudah dibedakan dengan variabel yang menggunakan huruf kecil. Meskipun begitu, kita juga bisa membuat konstanta dengan huruf kecil.
Berikut contoh lain pembuatan konstanta dalam bahasa pemrograman C:
#include <stdio.h> #define situs "www.duniailkom.com" #define ipk 4.00 int main(void) { printf("Sedang belajar bahasa C di %s",situs); printf("\n"); printf("Semoga dapat IPK %f",ipk); printf("\n"); return 0; }
Kali ini saya menggunakan huruf kecil untuk konstanta situs dan ipk. Karena nilai konstanta situs berupa teks, harus ditulis dalam tanda kutip.
Bisa anda perhatikan juga bahwa untuk perintah printf, saya menggunakan tanda %s karena konstanta situs berisi nilai string (teks), sedangkan untuk menampilkan nilai konstanta ipk, saya menggunakan %f karena nilainya berisi angka float (pecahan).
Cara Membuat Konstanta C dengan Perintah "const"
Selain menggunakan perintah #define, konstanta juga bisa dibuat menggunakan perintah const. Bedanya, pembuatan konstanta di tempatkan dalam fungsi main() dan juga harus ditulis tipe data dari konstanta tersebut.
Berikut contoh kode program bahasa C untuk membuat konstanta menggunakan keyword const:
#include <stdio.h> int main(void) { const char SITUS[20] = "www.duniailkom.com"; const float IPK= 4.00; printf("Sedang belajar bahasa C di %s",SITUS); printf("\n"); printf("Semoga dapat IPK %f",IPK); printf("\n"); return 0; }
Format pembuatan konstanta menggunakan perintah const adalah:
const tipe_data nama_konstanta = nilai_konstanta;
Dalam kode program diatas, perintah const char SITUS[20] = "www.duniailkom.com" artinya saya membuat konstanta bernama SITUS dengan tipe data char yang di isi nilai "www.duniailkom.com".
Sedangkan perintah const float IPK = 4.00 artinya saya membuat konstanta bernama IPK dengan tipe data float yang di isi nilai 4.00.
Lebih jauh tentang tipe data, akan dipelajari dalam tutorial tersendiri.
Sebagai bahasan terakhir, mari kita coba mengubah nilai sebuah konstanta setelah di definisikan:
#include <stdio.h> int main(void) { const float IPK = 4.00; printf("Semoga dapat IPK %f",IPK); printf("\n"); IPK = 2.00; // error: assignment of read-only variable 'IPK' return 0; }
Setelah membuat dan mengisi konstanta IPK dengan nilai 4.00, saya mencoba mengisinya dengan nilai 2.00 menggunakan perintah IPK = 2.00. Hasilnya tampil error: assignment of read-only variable 'IPK'. Artinya nilai ipk bersifat read-only dan tidak bisa diubah.
Dalam tutorial belajar bahasa pemrograman C kali ini kita telah membahas pengertian dan cara pembuatan konstanta. Pada tutorial berikutnya, akan disambung dengan cara pembuatan variabel di dalam bahasa pemrograman C.
Itu kok ada [20] setelah kata "situs". Itu maksudnya apa ya..??
Itu untuk membuat array dari char. Di dalam bahasa C, kalimat disimpan sebagai array dari karakter (bahasa C tidak mempunyai tipe data string). Jadi situs[20] menunjukkan bahwa variabel situs bisa menampung 20 karakter.
apakah bisa membuat situs menampung karakter menjadi tak terhingga?
%d,%f,%s, apa ada yng lain lagi?
Yup, masih banyak lagi yang lain. Jika tertarik mempelajari kode2 tersebut bisa ke sini: https://en.wikipedia.org/wiki/Printf_format_string
mau nanya kak. format membuat konstanta menggunakan #define apakah memerlukan tanda ; di akhir nilai konstanta? soalnya pada format terdapat tanda ; sedangkan pada contoh tidak.
Oh iya, seharusnya tidak ada tambahan tanda titik koma. Segera di revisi… terimakasih koreksinya
apakah void main() dengan main (void) sama? mohon penjelasannya min
Keduanya berbeda, ini baru akan jelas ketika sudah belajar tentang pembuatan function di bahasa C.
void main() artinya function main() tidak mengembalikan nilai apa pun, sedangkan main (void) artinya function main tidak menerima nilai inputan apapun.
Dalam bahasa pemrograman, void sering dipakai sebagai penanda "tidak ada data" / "kosong".
makasih min penjelasannya, sukses teruss yaa…
Jadi beda conts sama define apa min?
Salah satu perbedannya jika menggunakan #define, maka konstanta itu bersifat global dan akan berdampak (dan juga bisa diakses) dari berbagai function lain di luar main(). Sedangkan jika pakai const itu hanya bisa diakses dari dalam main() saja, sehingga ruang lingkupnya lebih terbatas dan tidak berdampak ke function lain.
Beberapa referensi lebih menyarankan pakai const karena alasan ini.
Bang sya mau nanya, untuk nilai konstata yang isi variabel X itu caranya masukinnya gimna ya ? saya coba tapi eror terus
Errornya di contoh kode yang mana ya?
cara membuat 2 fungsi main di bahasa c bagaimana ya gan?
Setahu saya di satu file kode program C tidak bisa terdapat 2 buah fungsi main.
Kalau bikin fungsi lain selain fungsi main, di bahasa c, bagaimana caranya gan, agar dapat berjalan di programnya, saya menggunakan codeblocks, terimakasih
Request di tampung ya, soalnya akan cukup panjang. Rencana saya dalam 1 – 2 minggu lagi akan di tambah tutorial khusus mengenai cara membuat function di bahasa C.
Kak untuk variabel di contoh di atas itu bagian mana yah?
Mau tanya maksud syntax const int coba = 5; itu apa ya?
Perintah tersebut akan membuat konstanta bertipe integer (bilangan bulat), dan berisi angka 5.