2011-06-10 124 views
0

我正在运行一个模拟,它工作正常,但当我在调试模式下试图追踪代码时,它不能正常运行。Visual Studio 2008速成版调试

我知道SIM卡的作品,因为当我通常运行它,它打印出的东西在SIM结束画面,但在调试模式下,它从来没有打印任何东西......

任何想法,为什么这可能?

+1

愚蠢的问题,但它是否打到打印代码,如果你在那里放置一个断点? – Skurmedel 2011-06-10 16:17:17

+0

不是一个愚蠢的问题......答案是否定的!但是,当我不运行调试器时它会打印它!因此,我的困惑和问题 – user620189 2011-06-10 16:22:08

+0

你的遗漏输出是否出现在调试器的输出窗口中? – 2011-06-10 16:32:51

回答

0

我不确定你是否在那里放置断点。

另外,您可以在代码中设置DEBUG宏,并在调试模式下打印出更详细的输出。

下面是简单的宏,你可以使用:

#ifdef _DEBUG 

    ... your code 

#endif //_DEBUG 

在调试模式下Visual Studio将执行中存在的“_DEBUG”模式之间的界线。

+0

我在那里放置断点。调试器工作,因为它停止在某些中断点。但是它没有得到它应该达到的代码的某些部分(并且我知道它不在调试模式时会这样做) – user620189 2011-06-10 16:38:49

0

'我知道代码的作品',除非没有。有可能在一种情况下工作但在另一种情况下工作的窃听代码是完全可能的。忘记你的代码是好的假设,而只是集中精力跟踪其他任何问题。

未初始化的变量是可能导致调试器内部和外部不同行为的事情,但实际上它可能是任何事情。