c – 进程的退出代码是否可以溢出小值?
发布时间:2020-12-16 03:46:33 所属栏目:百科 来源:网络整理
导读:我正在编写测试框架,在main()中我返回失败测试的数量.例如: int main() { int failedTests = runTests(); return failedTests;} 这个“int”溢出了吗?当我实际返回不同于0的东西时,我可以将%ERROR_LEVEL%设为== 0吗?它取决于主机操作系统吗?通常的最大
我正在编写测试框架,在main()中我返回失败测试的数量.例如:
int main() { int failedTests = runTests(); return failedTests; } 这个“int”溢出了吗?当我实际返回不同于0的东西时,我可以将%ERROR_LEVEL%设为== 0吗?它取决于主机操作系统吗?通常的最大值是多少?我可以确定一个整数< 32768(2 ^ 16 - 短)将永远适合? 编辑: 我遇到了python sys.exit的问题,它使用0-127范围(差不多)所以我现在小心了 解决方法
这取决于操作系统.在Linux上,它被限制为8位,因此可以是0(表示成功)或任何不大于255的正整数.参见
_exit(2)&
wait(2).
只有两个值是标准化的(按名称):EXIT_SUCCESS(通常为0)和EXIT_FAILURE(通常为1).请注意,标准定义了名称(可能还有exit(0)的行为; …)但不是它们的值. 您可以将(失败测试的)数量写入stdout或通过某个程序参数指定的某个文件. FreeBSD在其sysexits(3)中定义了一组退出名称和代码,但它们并未标准化,例如在POSIX.见POSIX documentation on exit. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |