【发布时间】:2012-11-09 03:59:07
【问题描述】:
我正在使用 Microsoft Visual C++ 6.0 并尝试调试其他人的程序。我尝试使用 printf 语句,但由于某种原因,这些语句在程序运行时没有显示在屏幕上。我可以使用 fprintf 将这些语句打印到文件中,但是当程序在执行过程中崩溃时这是无用的,因为那时文件将是空的。
如何强制某些输出显示在屏幕上?
【问题讨论】:
-
这个项目是控制台应用程序还是 GUI 应用程序?除非创建控制台窗口,否则
printf不起作用。 -
这是一个控制台应用程序。 MS-DOS/cmd 屏幕上什么都没有显示。
-
尝试使用
fprintf()和stderr。 -
当程序崩溃时,使用调试器是无价的!当程序崩溃时,实际上应该是您在调试器中运行它的第一反应。它将向您显示在哪里崩溃,显示堆栈跟踪以便您了解函数调用堆栈,并让您检查变量以帮助您了解它可能崩溃的原因。至于
printf的输出没有显示,在文本后面加一个换行符,或者调用fflush(stdout)刷新输出。 -
另外,由于您有两个问题,您可能应该将其发布为两个问题:一个用于输出问题(本应作为副本关闭);还有一个用于崩溃问题,以及相关代码。
标签: visual-c++ printf