使用本机运行时检查

在 Visual Studio C++ 项目中,可以使用本机 runtime_checks 捕获常见的运行时错误,例如:

  • 堆栈指针损坏。

  • 本地数组溢出。

  • 堆栈损坏。

  • 未初始化的局部变量上的依赖项。

  • 较短变量赋值的数据丢失。

    如果使用带有优化 ( /RTC ) 版本的 /O,将导致编译器错误。 如果在优化版本中使用 runtime_checks 杂注,则该杂注无效。

    调试启用了运行时检查的程序时,如果出现运行时错误,该程序的默认操作是停止并切换到调试器。 可以更改任何运行时检查的此默认行为。 有关详细信息,请参阅使用调试器管理异常

    下面的过程介绍了如何在调试版本中启用本机运行时检查,以及如何修改本机运行时检查的行为。

    本节的其他主题提供了有关以下方面的信息:

  • 用 C 运行库自定义运行时检查

在调试版本中启用本机运行时检查

  • 使用 /RTC 选项,并与 C 运行库(如 /MDd)调试版链接。

    若要在 Visual Studio 中设置此选项,请参阅 /RTC(运行时错误检查)参考文章的注解部分。 请在“基本运行时检查”属性中设置值,不要在“较小类型检查”属性中设置值。 不建议使用“较小类型检查”属性。

更改本机运行时检查操作

  • 使用 runtime_checks 杂注。