9.5. fenv.h
: Kayan Noktalı Ortam
Bu dosya, kayan noktalı işlemler için mevcut gerçekleştirmedeki durum bayrakları ve kontrol modları gibi ihtiyaçları karşılayan kayan noktalı ortama erişim sağlamak için kullanılan makro, tip ve fonksiyonları tanımlar.
Tipler:
fenv_t /* kayan noktalı ortamın tamamını içeren yapı tipi */ fexcept_t /* durum bayrakları değişken tipi */
Ortama göre aşağıdaki makroların bazıları tanımlanır:
FE_DIVBYZERO FE_INEXACT FE_INVALID FE_OVERFLOW FE_UNDERFLOW FE_ALL_EXCEPT FE_DOWNWARD FE_TONEAREST FE_TOWARDZERO FE_UPWARD FE_DFL_ENV
Fonksiyonlar:
Kayan Nokta İstisnaları
int feclearexcept(int i) int fegetexceptflag(fexcept_t * bg, int i) int feraiseexcept(int i) int fesetexceptflag(const fexcept_t * bg, int i) int fetestexcept(int i)
Yuvarlama
int fegetround(void) int fesetround(int y)
Ortam
int fegetenv(fenv_t * og) int feholdexcept(fenv_t * og) int fesetenv(const fenv_t * og) int feupdateenv(const fenv_t * og)
Not: FENV_ACCESS
pragması, bir programın
kayan nokta durum bayraklarını test etmek için kayan noktalı ortama
erişebileceğini veya varsayılmayan kayan nokta kontrol modları altında
çalışabileceğini derleyiciye belirtmek için bir yol sağlar.