位置:首頁 > 高級語言 > C語言標準庫 > ERANGE - C語言宏

ERANGE - C語言宏

C庫宏ERANGE表示範圍錯誤發生,如果輸入參數範圍以外的數學函數定義和errno設置為ERANGE。

聲明

以下是聲明宏ERANGE。

#define ERANGE some_value

參數

  • NA

返回值

  • NA

例子

下麵的例子演示了如何使用宏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
", x);
   }
   else 
   {
      printf("Log(%f) = %f
", x, value);
   }

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

讓我們編譯和運行上麵的程序,這將產生以下結果:

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