Standart C Programlama Dili


9.19. stdint.h: Tamsayı Tipleri

Bu başlık dosyası değişik boyutlarda tamsayı tipleri ve ilgili makrolar tanımlar. Ayrıca, başka başlık dosyalarında tanımlanmış olan tamsayılar ile ilgili alt ve üst sınırlar da bu dosyada tanımlanmıştır.

Aşağıdaki listede ilk sütunda verilen isimler tip, ikinci sütunda verilen isimler ise bu tiplerin alt ve üst limitlerini belirten makrolardır.

Tip ismiAlt limit
Üst limit
Açıklama
intN_t INTN_MIN

INTN_MAX
tam olarak N bit uzunluğunda işaretli tamsayı;
tam olarak -(2N-1)2N-1-1
uintN_t 0

UINTN_MAX
tam olarak N bit uzunluğunda işaretsiz tamsayı;
tam olarak 02N-1
int_leastN_t INT_LEASTN_MIN

INT_LEASTN_MAX
en az N bit uzunluğunda en küçük işaretli tamsayı;
-(2N-1-1) veya daha küçük2N-1-1 veya daha büyük
uint_leastN_t 0

UINT_LEASTN_MAX
en az N bit uzunluğunda en küçük işaretsiz tamsayı;
02N-1 veya daha büyük
int_fastN_t INT_FASTN_MIN

INT_FASTN_MAX
en az N bit uzunluğunda en hızlı işaretli tamsayı;
-(2N-1-1) veya daha küçük2N-1-1 veya daha büyük
uint_fastN_t 0

UINT_FASTN_MAX
en az N bit uzunluğunda en hızlı işaretsiz tamsayı;
02N-1 veya daha büyük
intptr_t INTPTR_MIN

INTPTR_MAX
gösterge değerini bozmadan alabilecek işaretli tamsayı;
-(215-1) veya daha küçük215-1 veya daha büyük
uintptr_t 0

UINTPTR_MAX
gösterge değerini bozmadan alabilecek işaretsiz tamsayı
0216-1 veya daha büyük
intmax_t INTMAX_MIN

INTMAX_MAX
en büyük işaretli tamsayı;
-(263-1) veya daha küçük263-1 veya daha büyük
uintmax_t 0

UINTMAX_MAX
en büyük işaretsiz tamsayı;
0264-1 veya daha büyük

Yukarıdaki listede N sayısının en azından 8, 16, 32 ve 64 değerlerini alacak şekilde tanımların olması beklenir.

Aşağıdaki listede, başka başlık dosyalarında tanımlanıp ilk sütunda isimleri verilen tiplerin alt ve üst sınırları yine bu dosyada tanımlanmıştır.

Tip ismiAlt limit
Üst limit
En düşükEn büyük
ptrdiff_t PTRDIFF_MIN

PTRDIFF_MAX
-65535 veya daha küçük65535 veya daha büyük
sig_atomic_t SIG_ATOMIC_MIN

SIG_ATOMIC_MAX
işaretli ise: -127 veya daha küçük127 veya daha büyük;
işaretsiz ise: 0255 veya daha büyük
size_t 0

SIZE_MAX
065535 veya daha büyük
wchar_t WCHAR_MIN

WCHAR_MAX
işaretli ise: -127 veya daha küçük127 veya daha büyük;
işaretsiz ise: 0255 veya daha büyük
wint_t WINT_MIN

WINT_MAX
işaretli ise: -32767 veya daha küçük32767 veya daha büyük;
işaretsiz ise: 065535 veya daha büyük

Aşağıdaki listede bu başlık dosyasında tanımlanan tamsayı tipleri için değişmez oluşturmaya yarayan ve yine bu dosyada tanımlanan makrolar verilmiştir:

Tip ismiDeğişmez oluşturan makro
int_leastN_tINTN_C(değer)
uint_leastN_tUINTN_C(değer)
intmax_tINTMAX_C(değer)
uintmax_tUINTMAX_C(değer)