0

我有一个本机 C++ 应用程序,我在执行 C++/CLI 应用程序期间作为进程运行,我看到退出代码有一些奇怪的行为。当进程正确退出但 Process.ExitCode 返回 -529697949 时,我希望退出代码为 0。但是,当我调试 C++ 应用程序时,我可以看到返回的退出代码实际上是 0。为什么 Process.ExitCode 属性与该值不匹配?

4

1 回答 1

8

当程序行为不端时,绝对最重要的假设是永远不要假设它是代码中的错误,它被数十万程序员使用并在十亿台机器上运行。首先假设这是您的程序中的问题。

有了这些知识,就可以更好地了解这个数字。当数字看起来很大且随机时,一个好的策略总是将其转换为十六进制。-529697949 = 0xe06d7363。Shazam,神奇的数字,谷歌也很好。这就是 Windows 异常代码的价值。e0 使其成为致命错误,6d7363 是拼写“msc”的 ASCII 代码。

您的程序因未处理的 C++ 异常而崩溃。

于 2013-03-14T01:59:30.470 回答