DebugView使用笔记

1. 什么是DebugView?

它是Sysinternals公司的系列调试工具。可以捕获程序中由TRACE()和OutputDebugString输出的信息。

2. C++需要完成哪些工作呢?

将打印的信息用OutputDebugString输出,示例:

#include "stdio.h"
using namespace std;

#define UseDebugView
#ifdef UseDebugView
#include "windows.h"
char g_Debug[256];
#endif

int main()
{
	int sum = 0;
#ifdef UseDebugView
	sprintf_s(g_Debug, 256, "FJL---【循环求和】[In]\n");
	OutputDebugStringA(g_Debug);
#endif
	for (int i = 0; i < 5;i++)
	{
		sum += i;
		//printf("sum is %d!\n", sum);
	}
#ifdef UseDebugView
	sprintf_s(g_Debug, 256, "FJL--【循环求和】[Out]\n");
	OutputDebugStringA(g_Debug);
#endif
	return 0;
}

如果我们能在debugview看到输出的信息,是不是一定程度就可以调程序了呢?!

3. DebugView需要完成的工作?

首先,设定DebugView的View条件,如下所示:

然后,运行程序,观察DebugView界面显示字符串:


总结:

C++设置我们期望的执行位置提示字符串;DebugView观察是否按照预期将其输出,根据输出的信息,便可以推断出代码问题所在。

调试工具不是万能的,只是一种辅助!!!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章