当前位置: 首页 > news >正文

【21】MFC入门到精通——MFC 调试及运行状态下,使用printf() 或者 cout 打印输出信息

文章目录

  • 1 方法
  • 2 实例应用
  • 3 在MFC初始化中调用一次,所以输出的地方都可打印
  • 4 项目代码下载

MFC运行状态下,使用printf() 或者 cout 打印输出信息

1 方法

只需在需要输出语句前加上以下两行代码,运行后会打开一个cmd窗口,
就可以打印输出printf() 或者 cout信息

AllocConsole();        //AllocConsole函数的功能是为当前的窗口程序申请一个Console窗口
freopen("CONOUT$", "w", stdout);  // freopen函数用来替换一个流,或者说重新分配文件指针,以实现重定向。

AllocConsole函数的功能是为当前的窗口程序申请一个Console窗口 返回非零值:调用成功,返回0,调用不成功

freopen函数用来替换一个流,或者说重新分配文件指针,以实现重定向。可重定向的流有:标准输入流、标准输出流或者标准错误流。

  • FILE *freopen(const char *path, const char *mode, FILE *stream);
    • "CONOUT$"是指代当前console的特殊字符串,
    • "w"表明以written模式打开这个console,
    • stdout指代标准输出流。

2 实例应用

在这里插入图片描述

3 在MFC初始化中调用一次,所以输出的地方都可打印

在初始化函数OnInitDialog()处调用一次PrintMessage(),然后在需要输出的地方直接输出即可。程序运行后直接调出Console窗口。

在这里插入图片描述

也可以将其封装成函数,便于调用

void CMFCApplication2Dlg::PrintMessage()
{AllocConsole();                   //AllocConsole函数的功能是为当前的窗口程序申请一个Console窗口freopen("CONOUT$", "w", stdout);  // freopen函数用来替换一个流,或者说重新分配文件指针,以实现重定向。std::cout << "调试输出窗口已打开" << std::endl;
}

4 项目代码下载

本节 项目文件下载

http://www.dtcms.com/a/512342.html

相关文章:

  • 使用 rqt_reconfigure 实时控制 ROS 自定义话题参数
  • 公司电脑做网站网站优化平台有哪些
  • 软件公司网站模版网站首页 栏目页 内容页
  • 【论文精读-4】RBG:通过强化学习分层解决物流系统中的大规模路径问题(Zefang Zong,2022)
  • 慢查询优化
  • 什么大型网站用python做的杭州科技公司排名
  • 四个字网站 域名莱芜金点子信息港最新招聘
  • 【算法笔记】暴力递归尝试
  • 一次学会二分法——力扣278.第一个错误的版本
  • 数据结构——二十七、十字链表与邻接多重链表(王道408)
  • 网站公司做的网站被攻击苏州网络推广
  • 网站权重能带来什么作用灰大设计导航网
  • i.MX6ULL Linux内核启动流程深度解析
  • Browser-Use 打造可操作浏览器的 AI 智能体
  • php网站开发入门到精通教程好玩的游戏网页
  • 代码仓库码云(gitee)配置环境记录
  • 织梦网站模板陶瓷广州建设行业网站
  • 面试(六)——Java IO 流
  • 怎么做视频网站教程php彩票网站建设教程
  • 大模型(Large Language Model, LLM)——什么是大模型,大模型的基本原理、架构、流程
  • 长春网站建设排名怎样用自己电脑做网站
  • 基于 Redis 的基数统计:高效的大规模去重与计数
  • 机械外贸网站站长网站工具
  • 广州企业建站素材安徽禹尧工程建设有限公司网站
  • MySQL if函数
  • Promise.all怎么用
  • 成都网站建设开发价玉环哪里有做网站
  • 01)mysql数据误删恢复相关-mysql5.7 开启 binlog、设置binlog 保留时间
  • 电力电子技术 第五章——非连续导电模式
  • Django 项目 .gitignore 模板