Beberapa tipe data di bahasa C#
Diambil dari referensi ini, tipe-tipe data pada bahasa C dapat diklasifikasikan dalam 4 kategori:
Tipe-tipe dasar: tipe ini merupakan tipe aritmatika yang mana terbagi lagi menjadi dua, yaitu integer dan floating-point.
tipe enum: tipe ini juga merupakan tipe aritmatika integer namun diwakilkan oleh nama-nama. Yang paling familiar dari tipe enum ini ada boolean, yaitu True untuk 1 dan False untuk 0.
tipe void: tipe ini menyatakan bahwa variabel tersebut tidak memiliki nilai yang spesifik.
tipe turunan: tipe ini merupakan tipe yang diturunkan dari tipe-tipe sebelumnya, seperti pointer, array, struct, union, dan fungsi.
Tipe integer#
Beberapa tipe-tipe integer yang tersedia pada bahasa C adalah sebagai berikut:
Jenis tipe integer |
Ukuran penyimpanan |
Batasan nilai |
---|---|---|
char |
1 byte |
-128 s.d. 127 atau 0 s.d. 255 |
unsigned char |
1 byte |
0 s.d. 255 |
signed char |
1 byte |
-128 s.d. 127 |
int |
2 atau 4 bytes |
-32,768 s.d. 32,767 atau -2,147,483,648 s.d. 2,147,483,647 |
unsigned int |
2 atau 4 bytes |
0 s.d. 65,535 atau 0 s.d. 4,294,967,295 |
short |
2 bytes |
-32,768 s.d. 32,767 |
unsigned short |
2 bytes |
0 s.d. 65,535 |
long |
8 bytes (4 bytes untuk sistem operasi 23 bit) |
-9223372036854775808 s.d. 9223372036854775807 |
unsigned long |
8 bytes |
0 s.d. 18446744073709551615 |
Ukuran pasti dari setiap variabel pada komputer tertentu dapat dilihat dengan menggunakan operator sizeof
.
Tipe floating-point#
tipe floating-point digunakan pada bilangan desimal. Perbedaan dari setiap tipe ini ialah presisi (akurasi nilai) dan sejauh mana angka belakang desimal yang bisa disimpan di memori.
Jenis |
Ukuran penyimpanan |
Batasan nilai |
Presisi |
---|---|---|---|
float |
4 byte |
1.2E-38 s.d. 3.4E+38 |
6 angka desimal |
double |
8 byte |
2.3E-308 s.d. 1.7E+308 |
15 angka desimal |
long double |
10 byte |
3.4E-4932 s.d. 1.1E+4932 |
19 angka desimal |
Tipe void#
Tipe ini sangat berguna di beberapa situasi. Ada 3 kemungkinan tipe void ini digunakan dalam bahasa C:
sebagai tipe kembalian fungsi: ini merupakan tipe fungsi yang tidak memiliki nilai kembalian apapun.
sebagai argumen pada fungsi: ini berarti fungsi tersebut tidak menerima parameter apapun.
sebagai tipe pointer: pointer yang memiliki tipe void dapat diperankan (casting) sebagai tipe data yang lainnya. Contoh fungsi
void *malloc( ... )
.