با سلام من یه سوال در c++ در مورد توابع داشتم
کار تابع matherr در داخل math.h چیه؟:46::46::46::46::46:
Printable View
با سلام من یه سوال در c++ در مورد توابع داشتم
کار تابع matherr در داخل math.h چیه؟:46::46::46::46::46:
سلام
این تابع برای اداره کردن خطا در مورد توابعی است که در هدرفایل Math وجود دارن.
این تابع قابل تغییر توسط کاربر (User Modifiable) هست و خودتون باید کدش رو بنویسین.
وقتی خطایی رخ بده این تابع سعی در رفع اون میکنه مثال زیر رو ببینید:
کد:#include <math.h>
#include <string.h>
#include <stdio.h>
int matherr (struct exception *a)
{
if (a->type == DOMAIN)
if (!strcmp(a->name,"sqrt")) {
a->retval = sqrt (-(a->arg1));
return 1;
}
return 0;
}
int main(void)
{
double x = -2.0, y;
y = sqrt(x);
printf("Matherr corrected value: %lf\n",y);
return 0;
}