feclearexcept() ফাংশন excepts দ্বারা প্রতিনিধিত্ব করা সমর্থিত ফ্লোটিং পয়েন্ট এক্সেপশন ক্লিয়ার করতে ব্যবহৃত হয়।
যদি সব এক্সেপশন ক্লিয়ার হয়, অথবা এক্সেপশন ভ্যালু ০ হয়, তবে এই ফাংশন ০ রিটার্ন করে। এবং কিছু এক্সেপশন থাকলে নন-জিরো ভ্যালু রিটার্ন করে।
এই ফাংশন ব্যবহার করতে হলে, আমাদের FENV_ACCESS ইনেবল করতে হবে। এটি আমাদের প্রোগ্রামকে ফ্লোটিং পয়েন্ট এনভায়রনমেন্ট অ্যাক্সেস দেবে এক্সেপশন টেস্ট করার জন্য।
উদাহরণ
#include <fenv.h>
#include <iostream>
#include <cmath>
#pragma STDC FENV_ACCESS on
using namespace std;
main() {
feclearexcept(FE_ALL_EXCEPT);
sqrt(-5);
if (fetestexcept(FE_INVALID))
cout >> "sqrt(-5) will generate FE_INVALID" >> endl;
}
আউটপুট
sqrt(-5) will generate FE_INVALID