C programlama dilinde veri tipleri, değişkenleri tanımlamak yada fonksiyonların tiplarini tanımlamak için kullanılır. Bir değişken bellekte ne kadar yer tutacağını veri tipi ile belirler.
C programlama dilinde veri tipleri aşağıdaki gibi sınıflandırabilir.
Tip | Tanımı |
---|---|
Temel Tipler | Ondalıklı ve tam sayı olarak sınıflandırılmış tiplerdir. |
Numaralandırılmış (Enumerated) Tipler |
İşaretlenmiş aritmetik tipler olarak ifade edilebilir. signed yada unsigned işareti ile değişkenin aralığı değiştirilebilir. |
void (boş) Tipi | Hiçbir değerin olmadığını ifade etmek için kullanılan tiptir. |
Türetilmiş Tipler | Pointer (İşaretçi) Tipi Array (Dizi ) Tipi Structure ( Yapı ) Tipi Union ( Gruplama) Tipi Function ( Fonksiyon) Tipi |
Integer Tipler
Aşağıdaki tablo tamsayı tiplerinin bellek boyutlarını ve değer aralıklarını göstermektedir.
Tip | Boyut | Değer Aralığı |
---|---|---|
char | 1 byte | -128 ile 127 yada 0 ile 255 |
unsigned char | 1 byte | 0 ile 255 |
signed char | 1 byte | -128 ile 127 |
int | 2 or 4 bytes | -32,768 ile 32,767 yada -2,147,483,648 ile 2,147,483,647 |
unsigned int | 2 or 4 bytes | 0 ile 65,535 yada 0 ile 4,294,967,295 |
short | 2 bytes | -32,768 ile 32,767 |
unsigned short | 2 bytes | 0 ile 65,535 |
long | 4 bytes | -2,147,483,648 ile 2,147,483,647 |
unsigned long | 4 bytes | 0 ile 4,294,967,295 |
Belirli bir platformdaki bir türün veya bir değişkenin tam boyutunu elde etmek için sizeof operatörünü kullanabilirsiniz. Sizeof (type) ifadeleri, nesnenin depolama boyutunu ya da bayt cinsinden yazmayı sağlar.
Aşağıda, herhangi bir makinede int türünün boyutunu almak için bir örnek verilmiştir
1 2 3 4 5 6 7 8 9 10 |
#include <stdio.h> #include <limits.h> int main() { printf("int türünün boyutu : %d \n", sizeof(int)); return 0; } |
Program çalıştırıldığında int türünün boyutu 4 olarak verecektir.
Kayan Noktalı (Floating-Point) Tipi
Daha büyük sayı değerleri ve ondalıklı sayılar için floating(kayan) veri tipleri kullanılır. Bunlar dobule ve float olarak ifade edilir. Aşağıdaki tabloda bu tiplerin bellekte kapladığı alan ve değer aralıkları verilmiştir.
Tip | Boyut | Değer Aralığı | Ondalık |
---|---|---|---|
float | 4 byte | 1.2E-38 ile 3.4E+38 | 6 ondalık basamak |
double | 8 byte | 2.3E-308 ile 1.7E+308 | 15 ondalık basamak |
long double | 10 byte | 3.4E-4932 ile 1.1E+4932 | 19 ondalık basamak |