MFC下利用TRACE语句可以很方便的打印调试信息,但是有些时候如果要打印另外的信息,为了分析数据的方便,不想与TRACE的信息混在一起。这个时候,利用控制台输出就是一个比较不错的捷径。虽然有很多局限性,比如,只能开一个控制台等等,但是,这个方法还是比较有吸引力,因为其使用就如同控制台程序一样,比读写文件少一个文件指针。使用方法如下,具体请参考MSDN。
例1:
#include <conio.h>
AllocConsole(); // 打开控制台资源
freopen( "CONOUT$", "w+t", stdout );// 申请写
freopen( "CONIN$", "r+t", stdin ); // 申请读
printf("Hello World!n"); // 写数据
char ch = getchar(); // 读数据
FreeConsole(); // 释放控制台资源
例2:
#include <conio.h>
AllocConsole();
_cprintf("nice");
int i;
_cscanf("%d",&i);
FreeConsole();