zoukankan      html  css  js  c++  java
  • VC++非MFC项目中如何使用TRACE宏

      如果不是MFC项目或者ATL的项目的话是不能使用这个宏的。这时有一个没有什么额外消耗的办法能够做到向调试输出窗口输出。

      在项目中额外包含windows.h这个头文件,再使用OutputDebugString()这个函数就能够起到与TRACE()宏相同的效果。在进行一点包装就能和c中的printf一样接受不定项参数。

    下面程序做为范例。

    #include <iostream>
    #include <windows.h>
    using namespace std;
    
    bool _trace(TCHAR *format, ...)
    
    {
        TCHAR buffer[1000];
        va_list argptr;
        va_start(argptr, format);
        wvsprintf(buffer, format, argptr);
        va_end(argptr);
        OutputDebugString(buffer);
        return true;
    
    }
    
    
    
    int main() {
    
        int test = 5;
        _trace("hi output:%d", test);
        int a;
        cin >> a;
    
    }

    另外记得要将项目属性中General->Character Set设置为Not Set 或者Multi Byte才行,用Unicode的话无法通过编译。

  • 相关阅读:
    [BZOJ 4710] 分特产
    洛谷 P4827 [国家集训队] Crash 的文明世界
    Test 7.12 T2
    [洛谷 P1377] TJOI2011 树的序
    [洛谷 P1013] NOIP1998 提高组 进制位
    ajax2
    Ajax
    javascript下兼容都有哪些
    获取类名 封装 getStyle
    作用域
  • 原文地址:https://www.cnblogs.com/jiangzhaowei/p/10705654.html
Copyright © 2011-2022 走看看