-
FLT_ROUNDS
Bu değer gerçek sayı toplamasında yuvarlama kipini belirler. Standart yuvarlama kiplerinin değerleri:
- -1
Bu kip belirlenebilir değildir.
- 0
Sıfıra yuvarlar.
- 1
En yakın sayıya yuvarlar.
- 2
Pozitif sonsuza yuvarlar.
- 3
Negatif sonsuza yuvarlar.
Diğer değerler, eğer varsa, makine bağımlı standart dışı yuvarlama kiplerini belirtir.
Gerçek sayılar için IEEE standardı gereğince çoğu makinede 1 değeri kullanılır.
Aşağıdaki tabloda FLT_ROUNDS sabitinin olası değerleri ile yuvarlamanın nasıl yapıldığı gösterilmiştir. Yuvarlama IEEE tek hassasiyetli gerçek sayılar standardına uygun olarak yapılmıştır.
0 1 2 3
1.00000003 1.0 1.0 1.00000012 1.0
1.00000007 1.0 1.00000012 1.00000012 1.0
-1.00000003 -1.0 -1.0 -1.0 -1.00000012
-1.00000007 -1.0 -1.00000012 -1.0 -1.00000012
-
FLT_RADIX
Bit gösteriminde üstel kısmın tabanına karşılık gelen değerdir. Bu bölümde açıklanan diğer makroların aksine bir sabit ifadesi olarak garantilidir. IBM 360 ve türevleri dışında bilinen tüm makineler için değeri 2 dir.
-
FLT_MANT_DIG
float veri türü için gerçek sayının ondalık kısmındaki taban-FLT_RADIX basamağın basamak sayısıdır. Aşağıdaki ifade ondalık kısım basamaklarının sınırlı olmasından dolayı 1.0'a gider (matematiksel olarak olmasada):
float radix = FLT_RADIX;
1.0f + 1.0f / radix / radix / … / radix
Burada radix, FLT_MANT_DIG kere uygulanır.
-
DBL_MANT_DIG
-
LDBL_MANT_DIG
Sırasıyla double ve long double veri türleri için gerçek sayının ondalık kısmındaki taban-FLT_RADIX basamağın basamak sayısıdır.
-
FLT_DIG
float türü için hassasiyeti belirleyen ondalık basamakların sayısıdır. Teknik olarak h ve i sırasıyla ikilik gösterimdeki hassasiyet ve taban ise ve ondalık basamakların sayısı o onluk gösterimdeki hassasiyet ise, örneğin, 10 tabanındaki o basamaklı bir gerçek sayı b tabanındaki h basamağa yuvarlanır ve o ondalık basamak sayısı değiştirilmeksizin tekrar geri alınır.
Bu makronun değerinin ISO C gereksinimlerini karşılamak üzere en azından 6 olacağı varsayılır.
-
DBL_DIG
-
LDBL_DIG
FLT_DIG'e benzerler ancak sırasıyla double ve long double veri türleri içindir. Bu makroların değerlerinin en azından 10 olacağı varsayılır.
-
FLT_MIN_EXP
float türü için ikilik gösterimdeki mümkün en küçük üs değeridir. Daha ayrıntılı ifade etmek gerekirse, float türündeki normalleştirilmiş bir gerçek sayı olarak FLT_RADIX değerinin bu değerden bir eksiğinin artan kuvvetlerinden elde edilebilecek en küçük değerini sağlayacak olan en küçük negatif tamsayıdır. (Pratikte float türü için en küçük değer 2-125-1 dir ve burada FLT_MIN_EXP -125 tir.)
-
DBL_MIN_EXP
-
LDBL_MIN_EXP
FLT_MIN_EXP'e benzerler ancak sırasıyla double ve long double veri türleri içindir.
-
FLT_MIN_10_EXP
float türü için onluk tabanda üssün en küçük negatif değeri olan bir tamsayıdır. Normalleştirilmiş gerçek sayıların mümkün en küçük değeri için 10'un bu değerden 1 eksiği artan kuvvetindeki değerine karşılıktır. Bu değerin -37 veya daha az olduğu varsayılır.
-
DBL_MIN_10_EXP
-
LDBL_MIN_10_EXP
FLT_MIN_10_EXP'e benzerler ancak sırasıyla double ve long double veri türleri içindir.
-
FLT_MAX_EXP
float türü için ikilik gösterimdeki mümkün en büyük üs değeridir. Daha ayrıntılı ifade etmek gerekirse, float türündeki normalleştirilmiş bir gerçek sayı olarak FLT_RADIX değerinin bu değerden bir eksiğinin artan kuvvetlerinden elde edilebilecek en büyük değerini sağlayacak olan en büyük pozitif tamsayıdır.
-
DBL_MAX_EXP
-
LDBL_MAX_EXP
FLT_MAX_EXP'e benzerler ancak sırasıyla double ve long double veri türleri içindir.
-
FLT_MAX_10_EXP
float türü için onluk tabanda üssün en büyük değeri olan bir pozitif tamsayıdır. Normalleştirilmiş gerçek sayıların mümkün en küçük değeri için 10'un bu değerden 1 eksiği artan kuvvetindeki değerine karşılıktır. Bu değerin en azından 37 olduğu varsayılır.
-
DBL_MAX_10_EXP
-
LDBL_MAX_10_EXP
FLT_MAX_10_EXP'e benzerler ancak sırasıyla double ve long double veri türleri içindir.
-
FLT_MAX
Bu makronun değeri float türünde ifade edilebilecek en büyük gerçek sayının değeridir. Bu değerin en azından 1E+37 olacağı varsayılır ve bu değer float türündendir.
İfade edilebilir en küçük sayı ise - FLT_MAX'tır.
-
DBL_MAX
-
LDBL_MAX
FLT_MAX'e benzerler ancak sırasıyla double ve long double veri türleri içindir. Makro değerinin veri türü kendi türü ile aynıdır.
-
FLT_MIN
Bu makronun değeri float türünde ifade edilebilecek en küçük gerçek sayının değeridir. Bu değerin 1E-37'den daha büyük olmayacağı varsayılır ve bu değer float türündendir.
-
DBL_MIN
-
LDBL_MIN
FLT_MIN'e benzerler ancak sırasıyla double ve long double veri türleri içindir. Makro değerinin veri türü kendi türü ile aynıdır.
-
FLT_EPSILON
1.0 + FLT_EPSILON != 1.0 gibi bir ifadeyi doğrulayan float türündeki en küçük pozitif gerçek sayıdır. 1E-5'den büyük olmayacağı varsayılır.
-
DBL_EPSILON
-
LDBL_EPSILON
FLT_MIN'e benzerler ancak sırasıyla double ve long double veri türleri içindir. Makro değerinin veri türü kendi türü ile aynıdır. Bu değerlerin 1E-9'dan daha büyük olmayacağı varsayılır.