A. Konstanta dan Variabel
Konstanta adalah nilai yang tidak pernah berubah, sebaliknya variabel dapat berubah- ubah nilainya saat program dieksekusi. Pada pernyataan berikut: Angka1 = 33. Angka1
adalah variabel sedangkan 33 adalah kostanta. Penulisan kostanta bisa dalam format desimal basis 10, biner basis 2, heksadesimal basis 16, ataupun oktal basis 8. Penulisan angka
desimal seperti yang sudah biasa digunakan dalam pernyataan aritmetika yaitu langsung menuliskan angkanya tanpa awalan. Format biner yang hanya mengenal angka 0 dan 1,
penulisannya pada beberapa compiler diawali dengan 0b, contoh: AngkaBiner = 0b01101001. Dengan format desimal AngkaBiner bernilai 105.
Angka dalam format hexadesimal penulisannya diawali dengan 0x, bilangannya dari 0 sampai 15, yang mana untuk angka 10 sampai 15 diwakili dengan abjad A sampai F, contoh:
AngkaHexa = 0x1C. Dalam format desimal AngkaHexa diatas bernilai 28. Format oktal penulisannya diawali dengan angka 0, bilangannya dari 0 sampai 7
AngkaOktal = 011 Dalam format desimal AngkaOktal di atas bernilai 9. Cara untuk mengubah format
angka dalam basis biner, oktal, desimal, dan heksadesimal dijabarkan lebih jauh dalam lampiran A. Selain berupa angka, konstanta dapat ditulis dalam bentuk karakter yang
kemudian oleh compiler akan diubah menjadi angka sesuai nilainya dalam tabel ASCII. Penulisan karakter sebagai konstanta diawali dan diakhiri dengan ‘ aphostrop, contoh:
Huruf_Awal = ‘A’. Menurut tabel ASCII, huruf A mempunyai nilai desimal 65 0x41, jadi pernyataan diatas sama dengan Huruf_Awal = 65. Selain konstanta, variabel dapat juga diisi
dengan variabel yang lain, contoh: Angka_Pertama = 1 Angka_Kedua = Angka_Pertama
Universitas Sumatera Utara
Variabel harus dideklarasikan dahulu sebelum kita gunakan. Deklarasi variabel meliputi nama dan tipe variabel. Berdasar tipe variabelnya compiler kemudian dapat mengalokasikan
seberapa banyak memori yang diperlukan.
Tabel 2.1 Macam - Macam Tipe Data Dasar dalam C Tipe Data
Range Nilai Alokasi Memori
unsigned char 0 .. 255
1 Byte char signed char
-128 .. 127 1 Byte
unsigned int 0 .. 65535
2 Byte int signed int
-32768 .. +32767 2 Byte
Unsigned short 0 .. 65535
2 Byte Short signed short
-32768 .. +32767 2 Byte
Unsigned long 0 .. 4294967295
4 Byte Long signed long
147483648 .. +2147483647 4 Byte
Float 3.402E+38 .. +3.402E+38
4 Byte double
.797E+308 .. +1.797E+308 8 Byte
pada beberapa compiler hanya mendukung sampai tipe float
Pendeklarasian variabel mempunyai format sebagai berikut: tipe_data Nama_Variabel;
atau untuk variabel yang punya tipe data sama, dapat ditulis: tipe_data Nama_Variabel1, Nama_Variabel2;
Nama_Variabel dapat kita tentukan sembarang asalkan tidak mengandung: a. ‘ ‘ spasi, ‘.’ titik, ‘ aphostrop, , , , ?, dan lain sebagainya kecuali _garis
bawah. b. Tidak diawali dengan angka.
Universitas Sumatera Utara
c. Operator – operator C. d. Keyword bahasa C.
Jangan lupa menuliskan ‘;’ pada akhir deklarasi. Pilihlah nama variabel yang mencerminkan kegunaan dari variabel tersebut sehingga mudah diingat fungsinya.
Dalam memilih tipe data kita harus perhatikan nilai maksimum dan minimum yang mungkin disimpan dalam variabel tersebut. Jika melibatkan operasi aritmetika dengan
bilangan positif saja kita pilih tipe unsigned tetapi untuk menyimpan angka negatif kita pilih tipe signed. Tipe data signed biasanya tidak disertakan saat deklarasi jadi cukup char atau int
saja. Jika variabel diisi angka yang lebih besar dari nilai maksimum tipe datanya maka hitungan angka di atas nilai maksimum akan dilanjutkan dari 0 lagi. Contoh:
unsigned char Angka1 = 300; unsigned int Angka2 = 65536;
Variabel Angka1 berisi 44 300 – 256, sedang variabel Angka2 berisi 0 65536 – 65536. Tipe data yang mengenal bilangan negatif char dan int menggunakan MSB Most
Significant Bit sebagai tanda bilangan negatif. Tipe char terdiri atas 8 bit bit 7 sampai bit 0
dengan bit ke 0 sebagai LSB, jika bit ke 7 bernilai 1 berarti bilangannya negative. Contoh: Char
bilangan_bulat =
-1; Jika bilangan_bulat ditulis dalam format biner nilainya adalah 0b11111111 atau 0xFF. Dalam
hal ini tentu saja format desimal lebih mudah untuk kita mengerti. Untuk mengubah angka positif menjadi negatif dalam format biner langkah-langkahnya adalah:
1. Komplemenkan tiap bit dalam angka tersebut, missal untuk angka 1 0b00000001 komplemennya adalah 0b11111110.
2. Tambah hasil komplemen tersebut dengan 1. Untuk angka 1 diatas setelah ditambah 1 hasil akhirnya adalah 0b11111111.
Universitas Sumatera Utara
Jika kita salah memilih tipe signed atau unsigned maka hasil operasi aritmetikanya bisa jadi salah arti. Contoh:
char input = -5; unsigned char output;
output = input + 2; Jika nilai output diuji apakah lebih besar atau kurang dari 0 maka jawabannya adalah output
lebih besar dari 0. Penyebabnya adalah karena output bertipe unsigned char sehingga -3 0xFD diartikan 253, Bit ke-7 tidak berfungsi sebagai tanda bilangan negatif. Sebuah
konstanta dapat juga dideklarasikan dengan nama tertentu. Deklarasi konstanta mirip deklarasi variabel berikut inisialisasinya ditambah keyword const di depannya. Dalam
pemrograman nama konstanta digunakan untuk menggantikan nilai konstanta yang sebenarnya. Keuntungan dari pendeklarasian sebuah konstanta adalah saat ada koreksi nilai
konstanta maka kita cukup memodifikasi di satu tempat yaitu deklarasinya saja.
B. Komentar