Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

feclearยกเว้นใน C ++


ฟังก์ชัน feclearexcept() ใช้เพื่อล้างข้อยกเว้นทศนิยมที่รองรับซึ่งแสดงโดยการยกเว้น

ฟังก์ชันนี้จะคืนค่า 0 หากล้างข้อยกเว้นทั้งหมด หรือค่าข้อยกเว้นเป็น 0 และส่งกลับค่าที่ไม่ใช่ศูนย์สำหรับข้อยกเว้นบางรายการ

ในการใช้ฟังก์ชันนี้ เราต้องเปิดใช้งาน 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