Skip to content

Latest commit

 

History

History
55 lines (44 loc) · 1.26 KB

math_errno.md

File metadata and controls

55 lines (44 loc) · 1.26 KB

MATH_ERRNO

  • cmath[meta header]
  • macro[meta id-type]
  • cpp11[meta cpp]
# define MATH_ERRNO 1

概要

MATH_ERRNOは、<cmath>内でerrnoにエラーが設定されたかを表す整数定数マクロである。

この定数とmath_errhandlingでビットANDをとった結果がゼロでないか比較することにより、errnoにエラーが設定されたか否かを判定できる。

#include <iostream>
#include <cmath>
#include <cerrno>
#include <cstring>

int main()
{
  errno = 0;
  std::acosh(0.1);

  if (math_errhandling & MATH_ERRNO && errno != 0) {
    std::cout << "math error : " << std::strerror(errno) << std::endl;
  }
  else {
    std::cout << "no error" << std::endl;
  }
}
  • MATH_ERRNO[color ff0000]
  • std::acosh[link acosh.md]
  • math_errhandling[link math_errhandling.md]
  • errno[link ../cerrno/errno.md]

出力例

math error : Numerical argument out of domain

バージョン

言語

  • C++11

処理系