【问题标题】:How do I setup Visual Studio to output to the console the line of code where a program crashes?如何设置 Visual Studio 以将程序崩溃的代码行输出到控制台?
【发布时间】:2020-08-06 22:11:36
【问题描述】:

在 Python 中,当发生崩溃时,发生崩溃的代码行和错误消息会打印到控制台窗口。这也可以在 Free Pascal 中使用 lineinfo 单元进行设置。

在 C++(Visual Studio 社区)中是否有等价物?

这个 (https://docs.microsoft.com/en-us/visualstudio/debugger/getting-started-with-the-debugger-cpp?view=vs-2019) 不会告诉我崩溃发生在哪条线路上,但可以帮助我猜测它发生在哪里,我想节省时间。

【问题讨论】:

  • 那“代码行”称为调试器和调用堆栈。
  • 您还可以使用其他工具来帮助您找出问题所在。以下是一些可用工具的列表:stackoverflow.com/a/6580332/7582247
  • 一个经过编译和优化的 C++ 程序通常会去掉几乎所有的识别标记,函数被简化为一个地址,变量是一个地址或另一个地址的偏移量,执行的机器指令通常看起来不像源代码。将您的源代码想象成将水果放入搅拌机中,当计算机运行时,它通过一根或多根吸管饮用产生的冰沙。提取代码行甚至行号之类的信息几乎是不可能的。
  • 然后我完全没有得到关于它在哪一行代码上崩溃的信息。 在右下角(默认窗口布局)是一个调用堆栈选项卡。其中包含您需要了解的有关程序崩溃的位置、正在运行的变量以及程序如何到达那里的所有信息。非常方便。更正:您必须向左看才能找到起作用的变量。把我的调试器弄混了。
  • 不用担心。但回到我的一天 8:30 是在睡觉。我们不得不步行 40 英里去上班——那时没有公制,儿子——风雨飘雪。上山。两种方式...

标签: c++ debugging console


【解决方案1】:

来自用户4581301,

然后我完全没有得到它在哪一行代码上崩溃的信息。在右下角(默认窗口布局)是一个调用堆栈选项卡。其中包含您需要了解的有关程序崩溃的位置、正在运行的变量以及程序如何到达那里的所有信息。非常方便。更正:您必须向左看才能找到起作用的变量。把我的调试器弄混了。 – user4581301 3 分钟前

来自保罗麦肯齐: 该“代码行”称为调试器和调用堆栈。 – PaulMcKenzie 49 分钟前

谢谢大家

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-02-09
    • 2018-04-28
    • 2020-04-24
    • 2014-09-08
    • 1970-01-01
    • 1970-01-01
    • 2013-04-28
    相关资源
    最近更新 更多