对于 Windows(非 GUI)中的 C/C++ 应用程序,不同故障的正确错误代码列表应该是什么?我见过各种列表,例如来自 IBM 和其他人的列表,但我想知道是否对程序退出时提供给用户的典型错误代码达成了某种共识。
3 回答
参数有三个可移植值exit
:0
、EXIT_FAILURE
和EXIT_SUCCESS
。0
相当于EXIT_SUCCESS
。
来自:http ://www.cplusplus.com/reference/cstdlib/EXIT_SUCCESS/
成功退出程序:
exit(EXIT_SUCCESS);
对于程序失败退出:
exit(EXIT_FAILURE);
来自维基百科:
除了宏 EXIT_SUCCESS 和 EXIT_FAILURE 之外,C 标准没有定义返回码的含义。返回代码的使用规则在不同平台上有所不同(请参阅特定于平台的部分)。
在维基百科中:
DOS
在 DOS 术语中,错误级别是可执行程序或子例程返回的整数退出代码。错误级别通常在 0 到 255 之间。在 DOS 中,只有 256 个错误代码可用。
视窗
Windows 使用 32 位有符号整数作为退出代码。[9] 如果进程初始化失败,可能会返回 Windows 系统错误代码。 [10] Windows 系统错误代码可在线获取。[11]
例如,在从 DOS 继承的错误级别术语中,命令行解释器 CMD.exe 直接引用了退出代码。.NET Framework 进程和 Windows PowerShell 将其称为 Process 对象的 ExitCode 属性。
根据维基百科,以下链接包含与 windows 平台相关的错误代码
据我所知,没有这样的标准。唯一的标准是返回 EXIT_SUCCESS(来自 stdlib.h),以防它成功返回。这有助于调用您的程序的脚本检查是否成功。您返回的错误代码需要为您的程序详细记录。POSIX 建议从 main 中返回 0-255。通常 0 是 EXIT_SUCCESS。
如果您只有一个特定的失败返回,您可以使用 EXIT_FAILURE。