errno

原文:http://www.cplusplus.com/reference/clibrary/cerrno/errno/

int
最后的错误代码

这个宏定义了一个可以修改的int整数型左值,因为它既可以被程序读取,也可以被程序修改。

errno 在程序启动的时候被设置为0,并且在某个标准C库函数中将该值修改成0或者其他错误信号值。你可以在你方便的时候将它的值重置为0。

声明errno的头文件(<cerrno>)同样也至少声明了以下两个不等于0的宏常量:

当errno被设置成这些的时候,宏的意思如下:
EDOM
域错误:一些数学函数仅仅为某些真值而定义,被称为域,例如,平方根函数仅仅为那些非负数字而定义,因此当对负数调用平方根函数时,errno被设置为EDOM。
ERANGE 范围溢出错误: 一个变量的取值范围是有限的。例如,pow数学函数可以很容易的超过浮点型变量的范围,或者strtod函数遇到数字序列远远超过int整数取值范围的情况。在这种情况下,errno设置为ERANGE。

在 C++ 中, errno 总是被定义为一个宏,但是在c编译器中,它可能在外部链接中被实现为一个整数对象。

你可能感兴趣的:(c,编译器)