Error numbers
定义的每个宏都<errno.h>
扩展为一个带有类型int
和唯一正值的整型常量表达式。以下常量由ISO C定义。只要开始'E'
后跟数字或大写字母,实现可定义更多。
| 在头文件<errno.h> |中定义
|:----|
| EDOM | 数学参数超出函数域(宏常量)|
| EILSEQ(C95)| 非法字节序列(宏常量)|
| ERANGE | 结果太大(宏常量)|
注意
例
#include <stdio.h>
#include <math.h>
#include <errno.h>
#include <string.h>
int main(void)
{
errno = 0;
printf("log(-1.0) = %f\n", log(-1.0));
printf("%s\n\n",strerror(errno));
errno = 0;
printf("log(0.0) = %f\n", log(0.0));
printf("%s\n",strerror(errno));
}
可能的输出:
log(-1.0) = nan
Numerical argument out of domain
log(0.0) = -inf
Numerical result out of range
参考
- C11标准(ISO/IEC 9899:2011):
- 7.5/2错误<errno.h>(p:205)
- C99标准(ISO/IEC 9899:1999):
- 7.5/2错误<errno.h>(p:186)
- C89/C90标准(ISO/IEC 9899:1990):
- 4.1.3错误<errno.h>
另请参阅
错误号 | 宏扩展到POSIX兼容的线程局部错误号变量(宏变量) |
---|---|
PERROR | 显示当前错误对应的字符串到stderr(函数) |
strerrorstrerror_sstrerrorlen_s(C11)(C11) | 返回给定错误代码(函数)的文本版本 |
| C++ documentation for Error numbers |
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com