代码改变世界

在MFC,Win32程序中向控制台(Console)窗口输出调试信息

2011-03-12 13:54  bingcaihuang  阅读(11336)  评论(1编辑  收藏  举报
在MFC程序中输出调试信息的方法有两种,一种是使用TRACE宏,可以向Output窗口输出调试信息;另一种是用MessageBox,弹出消息框来输出调试信息,但会影响程序的运行。
其实有一种方法可以更为方便的输出调试信息,就是输出到控制台(Console)中,即不影响程序运行,又便于查看调试信息。方法如下:
1、#include <conio.h>

2、在需要开启控制台窗口的地方调用
AllocConsole();//注意检查返回值

3、在需要输出调试的时候调用_cprintf等函数
如_cprintf("i=%d\n", i);

4、关闭控制台的时候调用
FreeConsole();

注意:上述方法在输出中文时会出现乱码,如果需要输出中文,请使用下面的方法:
AllocConsole();
freopen( "CONOUT$","w",stdout);
printf("i的值为%d\n", i);
FreeConsole();