使用OutputDebugString输出调试信息

OutputDebugString输出调试信息的时候一般是在DEBUG模式下,不过如果不加控制条件,在release模式下也可以使用

OutputDebugStringA输出普通字符串的数据信息

OutputDebugStringW输出宽字节类型的数据信息

本文以普通字符串类型举例

1、定义一个宏,即你要输出什么样的信息本例格式是"NFO--"+你要输出的信息,

OUTINFO_0_PARAM表示输出纯字符串,OUTINFO_1_PARAM表示可以携带一个参数,以此类推2、3
1 //输出调试信息--在DebugView软件里面看调试信息 
2 #define OUTINFO_0_PARAM(fmt) {CHAR sOut[256];CHAR sfmt[50];sprintf_s(sfmt,"%s%s","INFO--",fmt);sprintf_s(sOut,(sfmt));OutputDebugStringA(sOut);}    
3 #define OUTINFO_1_PARAM(fmt,var) {CHAR sOut[256];CHAR sfmt[50];sprintf_s(sfmt,"%s%s","INFO--",fmt);sprintf_s(sOut,(sfmt),var);OutputDebugStringA(sOut);}    
4 #define OUTINFO_2_PARAM(fmt,var1,var2) {CHAR sOut[256];CHAR sfmt[50];sprintf_s(sfmt,"%s%s","INFO--",fmt);sprintf_s(sOut,(sfmt),var1,var2);OutputDebugStringA(sOut);}    
5 #define OUTINFO_3_PARAM(fmt,var1,var2,var3) {CHAR sOut[256];CHAR sfmt[50];sprintf_s(sfmt,"%s%s","INFO--",fmt);sprintf_s(sOut,(sfmt),var1,var2,var3);OutputDebugStringA(sOut);}    

2、使用例子

1     OUTINFO_0_PARAM("这是调试信息-0--
");
2     OUTINFO_1_PARAM("这是调试信息-1--%d
",1);
3     OUTINFO_2_PARAM("这是调试信息-2--%d,%d
",1,2);
4     OUTINFO_3_PARAM("这是调试信息-3--%d,%d,%d
",1,2,3);

3、查看输出信息

下载调试工具DebugView,管理员身份运行DebugView.exe,然后就可以查看到你输出的信息了

原文地址:https://www.cnblogs.com/LYF-LIUDAO/p/8301849.html