您的位置:首页 > 其它

MFC中调试过程中查看输出信息

2013-05-06 21:21 363 查看
在调试MFC程序时,我们经常需要查看特定位置变量的输出值。或者在某特定条件执行时,给出一个输出标识。

一般来说,有3种方法:

1) 调用TRACE(LPCTSTR lpszFormat, ...)函数

在MFC中使用TRACE函数来打印输出结果却是非常方便,和在控制台程序中使用printf函数的使用方法和效果类似。不过有几点

需要注意:一,TRACE函数的输出是在Output窗口的Debug选项下; 二,只有在DEBUG版本调试时才会有输出,如果是在

Release版本调试或者运行程序时,将不会看到输出。

2)使用AfxMessageBox( )函数来输出信息

这个函数在调试时也比较常用,使用方法简单,此处就不做介绍。

3)将标准输出定向到自己创建的控制台

#include "io.h"

#include "fcntl.h"

void InitConsole()

{

int nRet= 0;

FILE* fp;

AllocConsole();

nRet= _open_osfhandle((long)GetStdHandle(STD_OUTPUT_HANDLE), _O_TEXT);

fp = _fdopen(nRet, "w");

*stdout = *fp;

setvbuf(stdout, NULL, _IONBF, 0);

}

将此函数在MFC程序初始化的地方调用,即可使用控制台查看printf函数的打印信息
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: