Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Geçerli kayan nokta ortamında belirtilen kayan nokta durum bayraklarını ayarlar.
Sözdizimi
int fesetexceptflag(
const fexcept_t *pstatus,
int excepts
);
Parametreler
pstatus
Özel durum bayraklarının ayarlanacağı değerleri içeren nesne fexcept_t işaretçisi. nesnesi önceki bir çağrısı fegetexceptflagtarafından ayarlanabilir.
excepts
Kayan nokta özel durum durumu, ayarlanacağı şekilde işaretlenir.
Dönüş değeri
Belirtilen tüm özel durum bayrakları başarıyla ayarlanırsa, 0 döndürür. Aksi takdirde sıfır olmayan bir değer döndürür.
Açıklamalar
işlevi, fesetexceptflag tarafından excepts belirtilen kayan nokta özel durum bayraklarının durumunu, tarafından işaret edilen nesnede fexcept_t ayarlanan karşılık gelen değerlere pstatusayarlar. Özel durumları tetiklemiyor. İşaretçi pstatus geçerli fexcept_t bir nesneye işaret etmelidir veya sonraki davranış tanımlanmamıştır. fesetexceptflag işlevi, içinde fenv.h> içinde <tanımlanan şu özel durum makro değerlerini exceptsdestekler:
| Özel Durum Makro | Açıklama |
|---|---|
FE_DIVBYZERO |
Daha önceki bir kayan nokta işleminde tekillik veya kutup hatası oluştu; bir sonsuzluk değeri oluşturuldu. |
FE_INEXACT |
İşlev, önceki bir kayan nokta işleminin depolanan sonucunu yuvarlatmaya zorlandı. |
FE_INVALID |
Önceki kayan nokta işleminde bir etki alanı hatası oluştu. |
FE_OVERFLOW |
Bir aralık hatası oluştu; Önceki kayan noktalı işlem sonucu temsil edilemeyecek kadar büyükdü. |
FE_UNDERFLOW |
Önceki kayan noktalı işlem sonucu, tam duyarlıkla temsil edilemeyecek kadar küçüktür; bir normal dışı değer oluşturuldu. |
FE_ALL_EXCEPT |
Desteklenen tüm kayan nokta özel durumlarının bit düzeyinde OR değeri. |
excepts Bağımsız değişken sıfır, desteklenen kayan nokta özel durum makrolarından biri veya iki veya daha fazla makronun bit düzeyinde VEYA olabilir. Diğer bağımsız değişken değerlerinin etkisi tanımlanmamıştır.
Bu işlevi kullanmak için çağrıdan önce yönergesini kullanarak erişimi engelleyebilecek kayan #pragma fenv_access(on) nokta iyileştirmelerini kapatmanız gerekir. Daha fazla bilgi için bkz. fenv_access.
Gereksinimler
| İşlev | C üst bilgisi | C++ üst bilgisi |
|---|---|---|
fesetexceptflag |
<fenv.h> | <cfenv> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.