zoukankan      html  css  js  c++  java
  • 应用程序LOG打印宏

    #include <tchar.h>
    #include <stdio.h>
    #include <Windows.h>
    
    /**
      \brief 作者
     */
    #define APPLOG_AUTHOR       _T("[author] ")
    
    /**
      \brief 附加信息
     */
    #define APPLOG_APPEND       _T("Communication ")
    
    /**
      \brief 缓存长度
     */
    #define APPLOG_BUFFER_SIZE  (256)
    
    /**
      \brief 应用程序LOG
     */
    #if 1
    #define APP_LOG( swzFormat, ... )\
        {\
        wchar_t swzBuffer[APPLOG_BUFFER_SIZE];\
        int idx = 0; \
        swprintf_s( swzBuffer+idx, APPLOG_BUFFER_SIZE, _T("%s "), APPLOG_AUTHOR );\
        idx += _tcslen(APPLOG_AUTHOR);\
        swprintf_s( swzBuffer+idx, APPLOG_BUFFER_SIZE-idx, _T("%s "), APPLOG_APPEND );\
        idx += _tcslen(APPLOG_APPEND);\
        swprintf_s( swzBuffer+idx, APPLOG_BUFFER_SIZE - idx, swzFormat, __VA_ARGS__ );\
        OutputDebugString(swzBuffer);\
        }
    #else
    #define APP_LOG(swzFormat, ... ) 
    #endif
    
    /**
      \brief 应用程序DEBUG信息
     */
    #ifdef _DEBUG
    #define APP_DBG_LOG(swzFormat, ... )\
        {\
        wchar_t swzBuffer[APPLOG_BUFFER_SIZE];\
        int idx = 0;\
        swprintf_s( swzBuffer+idx, APPLOG_BUFFER_SIZE, _T("%s "), APPLOG_AUTHOR );\
        idx += _tcslen(APPLOG_AUTHOR);\
        swprintf_s( swzBuffer+idx, APPLOG_BUFFER_SIZE-idx, _T("%s "), APPLOG_APPEND );\
        idx += _tcslen(APPLOG_APPEND);\
        swprintf_s( swzBuffer+idx, APPLOG_BUFFER_SIZE - idx, swzFormat, __VA_ARGS__ );\
        OutputDebugString(swzBuffer);\
        }
    #else
    #define APP_DBG_LOG(swzFormat, ... ) 
    #endif
  • 相关阅读:
    table表框去掉相邻的间隔
    各种日期格式化返回
    校验金额、大小写字母、大写字母、合法uri、email
    vue js校验金钱、数字
    vue-router 动态添加 路由
    可视化-echarts流向图制作
    HTTP状态码
    二分查找
    编程语言的变量为啥不能是数字开头
    python位运算
  • 原文地址:https://www.cnblogs.com/shanwenbin/p/2835267.html
Copyright © 2011-2022 走看看