利用Debug调试代码解决0xC0000005: 读取位置 0x0000000000000000 时发生访问冲突问题

 更新时间:2023年03月09日 08:24:19   作者:机巧的胖子  
这篇文章主要介绍了利用Debug调试代码解决0xC0000005: 读取位置 0x0000000000000000 时发生访问冲突,本文给大家分享完美解决方案,需要的朋友可以参考下

VS2019利用Debug调试代码解决0xC0000005: 读取位置 0x0000000000000000 时发生访问冲突
之前一直是使用release发布代码模式进行程序编译,前天突然出现这个问题:

0xC0000005: 读取位置 0x0000000000000000 时发生访问冲突

查找资料发现大概率是出现了空指针。没有判断指针是否为空就进行后续操作导致的错误,但是release模式并没有提示问题出现在哪里,只是显示程序崩掉,并且给你错误信息,查找资料后发现Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用,但是会忽略调试信息,这不利于我们进行程序调试。(所以我只凭借经验进行初步调试,但是效率很低也没有解决实际问题)

而debug配置能够包含调试信息,并且不作任何优化,便于程序员调试程序。

这就方便我们进行程序的调试和断点设置,设置了断点就可以看到所有变量的信息。就方便我们找到问题出现在了哪里。

果然,当我将配置改为debug后,运行程序,就会自动显示下图所示地方发生错误:为nullptr,空指针。那么问题就显而易见了。

在这里插入图片描述

但是我在上句语句中已经获得了pGalvanometer对象指针,这里不应该是nullptr。所以我在该位置设置断点,运行后,发现hr不为S_OK,而是显示加载有问题,那么很显然问题出在我加载外部组件COM中了。

在这里插入图片描述

但是我并没有改变COM组件的加载代码,于是认为可能组件注册出现问题。于是我重新注册了一下COM组件。

在这里插入图片描述

问题成功解决!

该次经历给我的经验就是在编写调试代码时要及时切换为Debug模式,因为Debug会保留调试信息,而且代码是原汁原味的,不会做任何改变,也方便我们进行调试。我本身并不是计算机专业,所以这些很基础的经验对我来说也帮助甚大。

到此这篇关于利用Debug调试代码解决0xC0000005: 读取位置 0x0000000000000000 时发生访问冲突问题的文章就介绍到这了,更多相关Debug调试代码解决0xC0000005内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • OpenGL扫描线填充算法详解

    OpenGL扫描线填充算法详解

    这篇文章主要为大家详细介绍了OpenGL实现扫描线填充算法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • c++如何在主函数文件中调用其他函数文件

    c++如何在主函数文件中调用其他函数文件

    这篇文章主要介绍了c++如何在主函数文件中调用其他函数文件问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • 华为云CodeArts IDE Online快速入门和使用

    华为云CodeArts IDE Online快速入门和使用

    华为云CodeArts IDE Online服务,提供了可随时随地编码的云上开发环境,同时具备开放的生态和独立插件市场,本文主要介绍了华为云CodeArts IDE Online快速入门和使用,具有一定的参考价值,感兴趣的可以了解一下
    2023-08-08
  • C语言实现俄罗斯方块小游戏

    C语言实现俄罗斯方块小游戏

    这篇文章主要为大家详细介绍了Linux下C语言实现俄罗斯方块小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • C/C++ Qt数据库SqlRelationalTable关联表详解

    C/C++ Qt数据库SqlRelationalTable关联表详解

    这篇文章主要介绍了QT中SqlRelationalTable关联表组件的使用,文中代码对我们的学习和工作具有一定价值,感兴趣的朋友可以了解一下
    2021-12-12
  • C++函数指针详解

    C++函数指针详解

    这篇文章主要介绍了C++函数指针详解,通过文字描述C++函数指针基础概念,内涵详细的代码实现和解析,希望对你能够有所帮助
    2021-06-06
  • 高效实现整型数字转字符串int2str的方法

    高效实现整型数字转字符串int2str的方法

    下面小编就为大家带来一篇高效实现整型数字转字符串int2str的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03
  • C++11智能指针中的 unique_ptr实例详解

    C++11智能指针中的 unique_ptr实例详解

    unique是独特的、唯一的意思,故名思议,unique_ptr可以“独占”地拥有它所指向的对象,它提供一种严格意义上的所有权。这篇文章主要介绍了C++11智能指针中的 unique_ptr实例详解,需要的朋友可以参考下
    2020-06-06
  • C语言:传值与传址交换整数

    C语言:传值与传址交换整数

    这篇文章主要给大家介绍了关于C语言中传值与传址之间交换整数的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用C语言具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2021-08-08
  • OpenCV利用霍夫变换实现交通车道线检测

    OpenCV利用霍夫变换实现交通车道线检测

    经典霍夫变换用来检测图像中的直线,后来霍夫变换经过扩展可以进行任意形状物体的识别,例如圆和椭圆。本文就来利用霍夫变换实现交通车道线检测,需要的可以参考一下
    2022-09-09

最新评论