1、所需头文件

点击(此处)折叠或打开

  1. #include <io.h>
  2. #include <fcntl.h>

2、把下面的函数加到你初始化的地方,然后你就可以使用printf函数了

点击(此处)折叠或打开

  1. void InitConsoleWindow()
  2. {
  3.     int nCrt = 0;
  4.     FILE* fp;
  5.     AllocConsole();
  6.     nCrt = _open_osfhandle((long)GetStdHandle(STD_OUTPUT_HANDLE), _O_TEXT);
  7.     fp = _fdopen(nCrt, "w");
  8.     *stdout = *fp;
  9.     setvbuf(stdout, NULL, _IONBF, 0);
  10. }


以下是我初始化函数中添加的

点击(此处)折叠或打开

  1. BOOL CDevelopDlg::OnInitDialog()
  2. {
  3.     CDialog::OnInitDialog();

  4.     GetDlgItem(IDC_BtnDisconnet)->EnableWindow(false);
  5.     InitConsoleWindow();
  6.     return TRUE; // return TRUE unless you set the focus to a control
  7.      // EXCEPTION: OCX Property Pages should return FALSE
  8. }
调用printf函数后会弹出一个CONSOLE,然后printf的东西就会出现在上面。


效果如下:

VC2010 MFC中实现printf调试功能,即MFC程序利用控制台输出调试信息-LMLPHP
10-17 17:54