Ori*_*ski 8 c c++ error-handling errno standard-library
在"The C Programming Language"一书中,它说:
"当文件出现错误或文件结束时,库中的许多功能都会设置状态指示器.这些指示器可以显式设置和测试.此外,整数表达式
errno
(声明<errno.h>
)可能包含一个错误编号,提供有关最多的信息.最近的错误."
我在哪里可以看到这些功能的列表?
该标准说明了这一点errno
:
程序启动时errno的值为零,但任何库函数都不会将其设置为零.如果在本国际标准的功能描述中没有记录errno的使用,则可以通过库函数调用将errno的值设置为非零值,无论是否存在错误.
其中告诉我,任何库函数都可以errno
以任何方式使用,除非:
errno
为0
请注意,该标准在脚注中建议如下:
因此,
errno
用于错误检查的程序应在库函数调用之前将其设置为零,然后在后续库函数调用之前检查它.当然,库函数可以保存输入值,errno
然后将其设置为零,只要原始值恢复,如果errno
在返回之前值仍然为零.
如其他答案所述,对于不在标准中的功能也很常见errno
.
归档时间: |
|
查看次数: |
1145 次 |
最近记录: |