MFC的GUI窗口使用Console输出函数printf(AllocConsole后,使用GetStdHandle取得句柄,然后就可以操作了)

在GUI程序中使用printf函数:

[cpp] view plain copy

  1. #include <io.h>
  2. #include <fcntl.h>
  3. void InitConsole()
  4. {
  5. int nRet= 0;
  6. FILE* fp;
  7. AllocConsole();
  8. nRet= _open_osfhandle((long)GetStdHandle(STD_OUTPUT_HANDLE), _O_TEXT);
  9. fp = _fdopen(nRet, "w");
  10. *stdout = *fp;
  11. setvbuf(stdout, NULL, _IONBF, 0);
  12. }

只要将上面的函数加到初始化的地方之后,就可以使用printf输出数据到console了,当然也可以使用cout输出。

http://blog.csdn.net/visualeleven/article/details/5517541

时间: 2024-12-29 01:40:07

MFC的GUI窗口使用Console输出函数printf(AllocConsole后,使用GetStdHandle取得句柄,然后就可以操作了)的相关文章

MFC的GUI窗口使用Console输出函数printf

在GUI程序中使用printf函数: #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(

(转)MFC的GUI窗口使用Console输出函数printf

原文链接 在GUI程序中使用printf函数: 1 #include <io.h> 2 #include <fcntl.h> 3 4 void InitConsole() 5 { 6 int nRet= 0; 7 FILE* fp; 8 AllocConsole(); 9 nRet=_open_osfhandle((long)GetStdHandle(STD_OUTPUT_HANDLE), _O_TEXT); 10 fp = _fdopen(nRet, "w")

老白的JAVA课程14 GUI 窗口的设置

项目驱动 需求分析-系统设计-编码-测试-维护期 GUI Swing程序的建立步骤 1.建立容器-可以容纳其他图形对象的类,容器中还可以添加容器 2.建立组件-组件就是一套图形对象 3.将组件放到容器当中-将创建好的对象添加到容器中,才能在窗口中显示 4.设置布局 JFrame:带有标题和边框的顶级窗口 JPanel:就是一个矩形的区域,其中可以包含图形组件,也可以包含其他JPanel JApplet:在浏览器中运行的容器 JScrollpane:一种可以实现水平或垂直滚动条的容器 JDiolo

MFC获得主窗口和父窗口指针

MFC编程中常常遇到子窗口向父窗口传递参数的情况,这就需要获得父窗口的指针. 例:主对话框CMyMainDlg通过按钮ButtonA进入对话框CMyParentDlg,CMyParentDlg在通过按钮ButtonB进入对话框CMyChildDlg.现在需要在CMyChildDlg分别访问CMyParentDlg和CMyMainDlg的内容,需要在CMyChildDlg中加入以下两条语句: CMyMainDlg    *pMMD = (CMyMainDlg*)AfxGetMainWnd();  

MFC学习之窗口基础

WinMain函数 1.句柄(HANDLE):{ 1. 定义:资源的标识 2. 句柄的作用: 操作系统通过句柄来找到对应的资源,从而对这些资源进行管理和操作. 3句柄的分类:(按资源){ 1.图标句柄(HICON) , 2.光标句柄(HCURSOR) , 3. 窗口句柄(HWND) , 4.应用程序实列句柄(HINSTANCE). } } 2.Windows应用程序,操作系统,计算机硬件之间的相互关系 Windows程序的入口函数: 窗口应用程序入口: Int WINAPI WinMain( H

MFC获取各个窗口(体)之间的指针(对象)

MFC在很多的对话框操作中,我们经常要用到在一个对话框中调用另一个对话框的函数或变量.可以用如下方法来解决. HWND hWnd=::FindWindow(NULL,_T("Sphere"));      //得到对话框的句柄 C***Dialog* pWnd= (C***Dialog*)C***Dialog::FromHandle(hWnd); //由句柄得到对话框的对象指针 pWnd->xxx( );   //调用C***Dialog中的函数xxx(); 以上参考:http:

MFC中关闭窗口的几种办法+MFC中MessageBox的用法

MFC中关闭窗口的几种办法: 退出程序用AfxGetMainWnd()->SendMessage(WM_CLOSE); 关闭当前窗口用DestroyWindow( ); 关闭模式对话框用EndDialog(0); MFC中MessageBox的用法 消息框是个很常用的控件,属性比较多,本文列出了它的一些常用方法,及指出了它的一些应用场合.1.MessageBox("这是一个最简单的消息框!");2.MessageBox("这是一个有标题的消息框!","

[转]隐藏基于对话框的MFC应用程序窗口的方法

隐藏基于对话框的MFC应用程序窗口的方法 (推荐这个方法,非常好用) 很多人可能会将窗口创建出来,然后用一个 ShowWindow(SW_HIDE) 的方法去隐藏窗口,当然这是可以做到隐藏的功能,但是有一点不足的地方就是窗口在隐藏之前会有一下短瞬的闪烁,而以下这种方法可以解决这种问题: 在 C***App::InitInstance() 的函数中将以下的这一段注释掉: C***Dlg dlg; m_pMainWnd = &dlg; int nResponse = dlg.DoModal(); i

C语言输出函数(printf)和输入函数(scanf)

前面的几个例子都用到了输出函数printf,例1-3还用到了输入函数scanf,这里我们先简单介绍一下它们的格式,以便后面使用.沈阳463整形医院http://www.hengnaya.com/scanf和 printf这两个函数分别称为格式输入函数和格式输出函数.其意义是按指定的格式输入输出值.因此,这两个函数在括号中的参数都由以下两部分组成:1) 格式控制串:格式控制串是一个字符串,必须用双引号括起来,它表示了输入输出量的数据类型. 在printf函数中可以在格式控制串内出现非格式控制字符,