सी ++ फेरिसेक्सेप्ट () - सी ++ स्टैंडर्ड लाइब्रेरी

C ++ में feraiseexcept () फ़ंक्शन तर्क द्वारा निर्दिष्ट सभी फ़्लोटिंग पॉइंट अपवादों को बढ़ाने का प्रयास करता है।

Feraiseexcept () फ़ंक्शन को हेडर फ़ाइल में परिभाषित किया गया है।

फेरिसेक्सेप्ट () प्रोटोटाइप

 int feraiseexcept (इंट एक्सेप्ट);

फ़्लोटिंग पॉइंट अपवादों को उठाया जाना तर्क वितर्क में सूचीबद्ध है।

इसके अलावा, आपको FENV_ACCESS को सक्षम करना चाहिए , जो आपके प्रोग्राम को उठाए गए अपवादों का परीक्षण करने के लिए फ़्लोटिंग पॉइंट वातावरण तक पहुंचने के लिए देगा।

feraiseexcept () पैरामीटर

  • छूट: बढ़ाने के लिए अपवाद झंडे की बिटमास्क लिस्टिंग।
बिटमास्क ने मैक्रों को स्वीकार कर लिया
मैक्रो प्रकार विवरण
FE_DIVBYZERO ध्रुव त्रुटि शून्य से विभाजन
FE_INEXACT निष्प्राण सटीक परिणाम नहीं जैसे (1.0 / 3.0)
FE_INVALID डोमेन त्रुटि कम से कम एक तर्क का उपयोग किया जाता है जिसके लिए फ़ंक्शन परिभाषित नहीं है
FE_OVERFLOW अतिप्रवाह सीमा त्रुटि परिणाम प्रकार में बहुत बड़ा होता है जिसका रिटर्न प्रकार द्वारा प्रतिनिधित्व किया जाता है
FE_UNDERFLOW अंडरफ्लो रेंज एरर परिणाम प्रकार में बहुत छोटा होता है जिसे रिटर्न प्रकार द्वारा दर्शाया जाता है
FE_ALL_EXCEPT सभी अपवाद कार्यान्वयन द्वारा समर्थित सभी अपवाद

feraiseexcept () वापसी मान

  • यदि अपवाद द्वारा निर्दिष्ट सभी अपवादों को उठाया जाता है, तो फेरिसेसेप्ट () फ़ंक्शन शून्य मान देता है।
  • अन्यथा यह नॉनवेज मूल्य लौटाता है।

उदाहरण: feraiseexcept () फ़ंक्शन कैसे काम करता है

 #include #include #pragma STDC FENV_ACCESS ON using namespace std; int main() ( int retVal; feclearexcept(FE_ALL_EXCEPT); retVal = feraiseexcept(FE_OVERFLOW | FE_INVALID); if (retVal == 0) cout << "Successfully raised FE_OVERFLOW and FE_INVALID" << endl; else cout << "Raising FE_OVERFLOW and FE_INVALID failed" << endl; return 0; )

जब आप प्रोग्राम चलाते हैं, तो आउटपुट होगा:

 सफलतापूर्वक FE_OVERFLOW और FE_INVALID को उठाया गया

दिलचस्प लेख...