命名空间
变体
操作

错误代码

来自 cppreference.cn
< c‎ | error

<errno.h> 中定义的每个宏都扩展为一个整数常量表达式,类型为 int,并具有唯一的正值。 ISO C 定义了以下常量。 实现可以定义更多,只要它们以 'E' 开头,后跟数字或大写字母。

定义于头文件 <errno.h>
EDOM
数学函数参数超出定义域
(宏常量)
EILSEQ
(C95)
非法字节序列
(宏常量)
ERANGE
结果过大
(宏常量)

目录

[编辑] 注释

许多额外的 errno 常量由 POSIX 定义 以及由 C++ 标准库 定义,并且各个实现甚至可能定义更多,例如 Linux 上的 errno(3) 或 BSD 和 OS X 上的 intro(2)

[编辑] 示例

#include <errno.h>
#include <math.h>
#include <stdio.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

[编辑] 参考文献

  • C23 标准 (ISO/IEC 9899:2024)
  • 7.5/2 错误 <errno.h> (页码: 待定)
  • C17 标准 (ISO/IEC 9899:2018)
  • 7.5/2 错误 <errno.h> (页码: 待定)
  • C11 标准 (ISO/IEC 9899:2011)
  • 7.5/2 错误 <errno.h> (页码: 205)
  • C99 标准 (ISO/IEC 9899:1999)
  • 7.5/2 错误 <errno.h> (页码: 186)
  • C89/C90 标准 (ISO/IEC 9899:1990)
  • 4.1.3 错误 <errno.h>

[编辑] 参见

宏,扩展为 POSIX 兼容的线程局部错误代码变量
(宏变量) [编辑]
将当前错误对应的字符串显示到 stderr
(函数) [编辑]
返回给定错误代码的文本版本
(函数) [编辑]
C++ 文档 关于 错误代码