知识大全 Win32 DLL的一个调试心得
Posted 函数
篇首语:殷殷之情俱系华夏,寸寸丹心皆为家国。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Win32 DLL的一个调试心得相关的知识,希望对你有一定的参考价值。
Win32 DLL的一个调试心得 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
在MFC工程(包括单文档 多文档 基于对话框 MFC DLL等)调试程序时可以使用trace宏来输出相关变量的值 在Win 工程(包括Win Application和Win DLL)只能使用OutputDebugString函数来输出相关变量值 但是我觉得OutputDebugString比起trace宏有很大的不足 OutputDebugString不能像trace宏一样格式化输出 只能输出字符串 而且糟糕的是Win 工程不能使用MFC的CString类构造格式化输出字符串 为此我上网搜了一些资料 找到了在Win 格式化输出的方法 具体就是构造一个类似C语言的printf函数DebugString 具体代码如下
#ifdef _DEBUG
void WINAPI DebugString(LPCSTR format )
va_list arglist;
char buffer[ ];
va_start (arglist format);
vsprintf(buffer format arglist);
va_end (arglist);
strcat(buffer \\t );
OutputDebugString (buffer);
#endif
代码说明
char buffer[ ] 为格式化输出字符串的长度 应该根据你要输出的变量值合理设置 strcat(buffer \\t ); // 调用该函数后在output窗口中输出字符串后跳到下一个tab位置 可以换为换行符
测试代码
#include <windows h>
#include <stdio h>
#ifdef _DEBUG
void WINAPI DebugString(LPCSTR format )
va_list arglist; char buffer[ ];
va_start (arglist format);
vsprintf(buffer format arglist);
va_end (arglist);
strcat(buffer \\n );
OutputDebugString (buffer);
#endif
int main(int argc char* argv[])
int i;
for (i= ; i< ; i++)
DebugString( Hello: %d i); return ;
cha138/Article/program/net/201311/13758
相关参考
知识大全 当下载游戏时就出现这个不是有效的WIN32程序还有WIN32EXE是什么
当下载游戏时就出现这个不是有效的WIN32程序还有WIN32EXE是什么 以下文字资料是由(本站网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶
知识大全 如何在win7旗舰版32位系统中的右键菜单栏新建中添加新建excel文档
如何在win7旗舰版32位系统中的右键菜单栏新建中添加新建excel文档?求解?急!桌面右键新建一个文本文档,将以下文字复制到文档内保存退出后将该新“建文本文档.txt”改为“建文本文档.reg”确定
win7旗舰版32位系统?64位的系统好用吗?是不是比32位的要快,理论上是比32位快,但是平时使用是基本感觉不到的,64位主要是支持大内存。我们知道32位系统最高读取到3G多的内存。如果你的内存是大
关于WIN7旗舰版32位系统问题 以下文字资料是由(本站网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关于WIN7旗舰版32
Win32API与PB编程[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 控制由Run运行
华硕WIN7旗舰版32位系统的激活密钥 以下文字资料是由(本站网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!华硕WIN7旗舰
Win32API与PB编程[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 如何使PB窗口总
win7家庭普通版32位和64位区别大么?是不是绝大多数软件,特别是常用软件都支持64位?32位操作系统:无论是32位处理器还是64位处理器都支持。64位操作系统:只有64位处理器才能支持。其实大多数
知识大全 调用javacomm20-win32API注意事项
调用javacomm20-win32API注意事项 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&
WIN7旗舰版32位系统怎么装UG4.0? 以下文字资料是由(本站网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!WIN7旗舰