zoukankan      html  css  js  c++  java
  • Visual C++ Runtime Error 调试

    程序偶尔会出现:
    Microsoft Visual C++ Runtime Library Runtime Error!
    Program: [APPPATH] Abnormal program termination
    同时带有红色叉叉的对话框。

    打开VC,附加对应的进程,在线程选项卡里查找类似MessageBox的字样,找到的那个就是弹出对话框的线程,右键,转到线程,查看调用堆栈,一般就能找到问题了

    根据刚才的函数调用堆栈,可以发现,这个框框是由abort间接产生的,根据查看abort的源码,可以发现,产生结果是有选项_WRITE_ABORT_MSG和_CALL_REPORTFAULT这两个标志决定的,这两个标志一个是产生如上所述的对话框,一个是产生那个常见的错误报告对话框。在msdn里,和abort相关的还有个函数_set_abort_behavior,可通过此函数,改变abort的行为。

    还有个常见的错误框与此类似,是pure virtual function 就是纯虚函数的调用,它的过程与abort相类似。

    测试例子:

  • 相关阅读:
    update(十)
    perl-basic-数据类型&引用
    R-barplot()
    leetcode-22-string
    Java-basic-7-面向对象
    Java-basic-6-方法
    Java-basic-4-数据类型
    Java-basic-3-运算符-修饰符-循环
    Java-basic-2-
    leetcode-21-knapsack
  • 原文地址:https://www.cnblogs.com/xkxjy/p/2078094.html
Copyright © 2011-2022 走看看