zoukankan      html  css  js  c++  java
  • MFC中使用控制台窗口打印调试信息

    之前在调试vc6.0平台的老项目。。没有文档,没有注释,只能靠自己打印来调试。但是又不知道如何显示打印信息。

    百度找到相关信息,谢谢onlyou930的分享~

    原文链接http://blog.csdn.net/onlyou930/article/details/5710737

    具体方法如下:

    添加引用

    #include <iostream>
    using namespace std;

    在构造函数中调用

    AllocConsole();
    freopen("CON", "r", stdin );
    freopen("CON", "w", stdout);
    freopen("CON", "w", stderr);

    cout << "启动控制台/n/n";

    在析构函数中调用

    FreeConsole();

    需要输入输出时只需

    #include <iostream>
    using namespace std;

    cout << "显示的内容/n";

    char pStr[20];

    cin >> pStr;

    即可

    但是因为我的项目是有多个对象的,这样就需要在每个对象都进行操作,并且发现,如果新建对象,会重新打开一个控制台,打印十分混乱。。

    后来自己相对了解后进行修改,

    如果只是用printf打印的话,只需要最外层的构造函数中添加

    AllocConsole();//创建后台

    freopen("CON", "w", stdout);//标准输出
    freopen("CON", "w", stderr);标准错误

    最外层的析构函数中添加

    FreeConsole();

    而别的构造函数中只需添加

    freopen("CON", "w", stdout);//标准输出
    freopen("CON", "w", stderr);标准错误

    这样就可以通过一个控制台进行打印从而实现调试。

  • 相关阅读:
    ZJOI2019爆蛋记
    NOIp2018退役记
    拓展中国剩余定理(exCRT)摘要
    FFT(快速傅里叶变换)摘要
    主席树摘要
    LCT摘要
    替罪羊树摘要
    FHQ Treap摘要
    逻辑回归1-逻辑回归原理详解
    NLP自然语言处理原理及名词介绍
  • 原文地址:https://www.cnblogs.com/-Donny/p/6308907.html
Copyright © 2011-2022 走看看