如何在Windows编程中快速定位BUG

应该好多新手刚学Windows的时候都会觉得找BUG很难,因为太多的代码,太多的句柄和API函数了.这很正常,因为windows编程中有太多的新概念,对于刚学完C或者没学过C的人确实需要一段时间去熟悉里面的规则.这里我分享一下怎么样快速的定位BUG.

大家学Windows编程肯定会用到MSDN帮助文档吧(推荐英文版的)?我估计大家看函数参数介绍的时候很少会去看返回值,我觉得返回值挺重要的,它能帮助你快速的找出当这个函数发生错误的时候,到底是什么原因.
以下我介绍几个比较好的编程习惯(仅仅是个人意见,仅供参考).
1.使用API函数的时候一定要看它的返回值.其实也就是一句话而已,不是长篇大论,只需花上1分钟不到.
例如:

2.每个变量都要初始化,这个千万不能懒(这是某个大牛说的)
3.只要这个函数有返回值它都有可能出错,所以就要对API函数的返回值进行判断,然后调用GetLastError.如果你不想以后找BUG陷入困境就不要偷懒.
例如:

hwnd = CreateWindow(szAppName, TEXT("CreateBitmap Demo"),
        WS_OVERLAPPEDWINDOW,
        CW_USEDEFAULT, CW_USEDEFAULT,
        CW_USEDEFAULT, CW_USEDEFAULT,
        NULL, NULL, hInstance, NULL);
    if (!hwnd)
        dwError = GetLastError();

4.最重要的一点,就是会使用VS自带的错误查找工具!
步骤如下:
第一,找到发生错误的地方
例如:
如何在Windows编程中快速定位BUG_第1张图片
第二,查看dwError的值(它的值就是错误代码)
例如:

第三,打开错误查找工具.(工具->错误查找),并输入错误代码
如图:
如何在Windows编程中快速定位BUG_第2张图片
然后我们就可以在上面看到错误信息了.如果错误信息看不懂就自行谷歌或百度吧.

当然了还有很多错误,例如逻辑错误啊,低级错误等等是没办法用这个的,不过我觉得连逻辑错误和低级错误经常犯且不会找的话就不是水平问题了(自行脑补…..).

你可能感兴趣的:(windows,函数,api,bug,错误查找)