C 庫宏 - ERANGE

C 標(biāo)準(zhǔn)庫 - <errno.h> C 標(biāo)準(zhǔn)庫 - <errno.h>

描述

C 庫宏 ERANGE 表示一個范圍錯誤,它在輸入?yún)?shù)超出數(shù)學(xué)函數(shù)定義的范圍時發(fā)生,errno 被設(shè)置為 ERANGE。

聲明

下面是 ERANGE 宏的聲明。

#define ERANGE some_value

參數(shù)

  • NA

返回值

  • NA

實(shí)例

下面的實(shí)例演示了 ERANGE 宏的用法。

#include <stdio.h>
#include <errno.h>
#include <math.h>

int main()
{
   double x;
   double value;

   x = 1.000000;
   value = log(x);
   if( errno == ERANGE ) 
   {
      printf("Log(%f) is out of range\n", x);
   }
   else 
   {
      printf("Log(%f) = %f\n", x, value);
   }

   x = 0.000000;
   value = log(x);
   if( errno == ERANGE ) 
   {
      printf("Log(%f) is out of range\n" x);
   }
   else 
   {
      printf("Log(%f) = %f\n", x, value);
   }
   
   return 0;
}

讓我們編譯并運(yùn)行上面的程序,這將產(chǎn)生以下結(jié)果:

Log(1.000000) = 1.609438
Log(0.000000) is out of range

C 標(biāo)準(zhǔn)庫 - <errno.h> C 標(biāo)準(zhǔn)庫 - <errno.h>