“Tipe data atau kadang disingkat dengan ‘tipe’ saja adalah sebuah
pengelompokan data untuk memberitahu compiler atau interpreter
bagaimana programmer ingin mengolah data tersebut”
Secara sederhana, tipe data adalah cara kita memberitahu komputer
untuk mengelompokkan data berdasarkan apa yang dipahami oleh
komputer.
Sebagai contoh, misalkan saya memiliki data berupa angka. Agar bisa
dipahami oleh compiler bahasa C, data ini harus disimpan ke dalam variabel
yang sudah di set agar bisa menyimpan angka. Di dalam bahasa C, terdapat
tipe data integer dan float yang bisa diisi dengan angka. Sedangkan jika data
tersebut berupa huruf, bisa disimpan ke dalam tipe data char.
Array: Tipe data yang terdiri dari kumpulan tipe data dasar. Tipe data
tersebut harus 1 jenis.
Structure: Tipe data yang terdiri dari kumpulan tipe data dasar. Tipe
data tersebut bisa lebih dari 1 jenis.
Pointer: Tipe data untuk mengakses alamat memory secara langsung.
Tipe data turunan disebut juga sebagai Derived Data Type.
3. Tipe Data Bentukan (enum)
Sesuai dengan namanya, tipe data bentukan adalah tipe data yang dibuat
sendiri oleh kita (programmer). Isinya berupa data-data yang sudah
ditentukan. Tipe data bentukan ini dikenal juga sebagai Enumerated Data
Type atau disingkat sebagai enum.
4. Tipe Data Void
Tipe data void adalah tipe data khusus yang menyatakan tidak ada data.
Penggunaannya khusus untuk beberapa situasi seperti function yang tidak
mengembalikan nilai (return void), atau mengisi argumen function dengan
nilai kosong.
1. Char
2. Integer
3. Float
4. Array
5. Structure
6. Pointer
7. Enum
Voidpe data char dalam bahasa C:
#include <stdio.h>
1 int main(void)
2 {
3 char huruf;
huruf = 'Z';
4 printf("Huruf yang tersimpan adalah: %c",huruf);
5 printf("\n");
6 return 0;
7 }
8
9
1.
menggunakan library khusus: stdbool.h.
Sedangkan untuk string, di dalam bahasa C termasuk ke dalam array. String
di defenisikan sebagai array dari tipe data char.
Penjelasan lebih lanjut tentang tipe data ini, termasuk contoh penggunaannya
akan kita bahas secara bertahap dalam beberapa tutorial ke depan.
Dalam contoh ini, saya mendefinisikan variabel huruf yang bertipe char.
Huruf ini kemudian diisi dengan karakter ‘Z’ dan kemudian ditampilkan
dengan perintah printf. Sangat sederhana.
Untuk contoh kedua, saya akan buat konstanta dengan tipe data char:
1
#include <stdio.h>
2 int main(void)
3 {
4 const char huruf = 'a';
5 printf("Huruf yang tersimpan adalah: %c",huruf);
6 printf("\n");
return 0;
7 }
8
Disini huruf berupa sebuah konstanta bertipe char, bukan lagi variabel
seperti sebelumnya. Mengenai perbedaan antara variabel dengan konstanta,
sudah pernah kita bahas dalam beberapa tutorial sebelum ini: Cara
Pembuatan Konstanta dalam Bahasa C, dan Pengertian Variabel dan Cara
Penulisan Variabel Bahasa C.
Sebagai contoh terakhir, saya akan kombinasikan dengan perintah scanf agar
lebih dinamis:
1
2
#include <stdio.h>
3 int main(void)
4 {
5 char karakter1, karakter2, karakter3;
6 printf("Input 3 karakter sembarang \n");
printf("========================== \n");
7 printf("\n");
8 printf("Karakter pertama: ");
9 scanf(" %c",&karakter1);
10 printf("Karakter kedua: ");
11 scanf(" %c",&karakter2);
printf("Karakter ketiga: ");
12 scanf(" %c",&karakter3);
13 printf("\n");
14 printf("karakter yang diinput adalah: %c %c %c", karakter1, karakter2, karakter3);
15 printf("\n");
return 0;
16 }
17
18
Di awal kode program, saya menyiapkan 3 buah variabel bertipe data char.
Ketiga variabel ini bernama karakter1, karakter2 dan karakter3. Isi
program akan meminta inputan dari user untuk 3 karakter tersebut, kemudian
menampilkannya kembali.
Yang juga patut diingat, karakter disini bisa terdiri dari huruf, angka, serta
karakter khusus seperti ?, *, %, #. Jadi tidak masalah jika kita menginput
angka ke dalam tipe data char. Namun angka tersebut tetap harus 1 digit.
Angka yang diinput ke dalam tipe data char tidak bisa diolah, misalnya
dipakai untuk perhitungan atau penambahan. Jika kita menginginkan hal ini,
harus menggunakan tipe data khusus angka seperti integer atau float.
Bagaimana dengan karakter yang lebih dari 1 digit, seperti kata atau kalimat?
Di dalam bahasa C, kata atau kalimat (di kenal juga sebagai string) dianggap
sebagai array dari tipe data char. Lebih lanjut akan kita pelajari setelah
membahas tentang tipe data array nanti.
Tipe data integer adalah tipe data yang dipakai untuk menampung angka
bulat positif maupun negatif, seperti: 1, 99, dan -463.
Di dalam bahasa C, terdapat beberapa sub-tipe integer yang dibedakan
berdasarkan jangkauan angka yang bisa ditampung. Setidaknya terdapat 4
tipe data integer di dalam bahasa C:
char
short
int
long
Loh, bukannya char adalah tipe data untuk karakter? Kenapa juga ada di
dalam integer? Betul, inilah keunikan tipe data char di dalam bahasa C.
Secara internal, char sebenarnya bertipe integer. Untuk membedakan
apakah char ini berisi karakter atau huruf dilakukan pada saat
menampilkannya.
Jika di dalam perintah printf menggunakan kode %c, karakter lah yang akan
ditampilkan. Sedangkan jika di dalam perintah printf menggunakan
kode %d, maka akan menampilkan tipe data integer. Kita akan lihat
perbedaannya dengan contoh kode program sesaat lagi.
Tabel berikut merangkum jangkauan setiap tipe data integer dalam bahasa C:
Jenis Tipe Ukuran Memory
Data Penyimpanan Jangkauan