在MFC程序中输出调试信息的方法有两种,一种是使用TRACE宏,可以向Output窗口输出调试信息;另一种是用MessageBox,弹出消息框来输出调试信息,但会影响程序的运行。
其实有一种方法可以更为方便的输出调试信息,就是输出到控制台(Console)中,即不影响程序运行,又便于查看调试信息。方法如下:
1. 使用时略显麻烦。需要建立全局的instance,使用时需要p->print. 不能格式输出,不太方便。 推荐指数:★★★

在写MFC这个是一种调试的方法。
代码下载
++++++++++++++++++++++
MFC程序利用控制台输出调试信息
近日研究师兄的一个MFC程序,见其会生成一个控制台窗口输出信息,就如同ANSYS的Output窗口,觉得这个功能实在有用。
于是研究了一下他的代码,不过因为其为DLL工程,又可怜我的VC6打不开他的VS2005的Test工程,原先的工程没有办法编通过。
于是想把实现此功能的类拆出来,仔细研究之后,做了个Test工程,居然不好用,不知道哪里出了问题。
于是google之,有几个结果可供参考:
(1)Creating a console for your MFC app's debug output[http://www.codeproject.com/KB/debug/mfcconsole.aspx?df=100&forumid=822&exp=0&select=2656]
(2)MFC 利用控制台输出调试信息 http://blog.youkuaiyun.com/wang23432/article/details/5747897
(3) MFC/DLL 编程时用独立的控制台窗口显示用户自定义调试信息[这篇文章因为被转载多次,找不到出处,google标题即可找到]
(4) GUI程序也能使用控制台窗口[http://bbs.51cto.com/thread-396954-1-1.html]
综合一下,其实现的方法基本一致。
1)调用AllocConsole()
函数,创建一个Console;
2)调用_cprintf()
函数,输出字符串;