IntellitracTCPIP.exe中0x523d14cf(msvcr100d.dll)的未处理异常:0xC0000005:访问冲突读取位置0x00000008。
什么可能导致此错误?以及如何解决它
答案 0 :(得分:4)
您尝试阅读的地址表明您有一个由多个4字节整数组成的结构。你有一个指向该结构类型的指针,但该指针为null。你的程序想要读取第三个 - 第三个整数字段的偏移量为8.将其添加到空指针地址0,然后得到0x00000008。 (它可能是更小或更大类型的结构,甚至是数组,但我的经验告诉我最有可能使用4字节整数。)
错误消息表明违规行代码属于msvcr100d.dll。那不是你的代码;你可能已经传递了一个指向某个C运行时函数的空指针。该函数假设您提供了一个有效的指针并尝试读取结构的第三个字段,但由于该指针无效,操作系统拦截了读取尝试并引发了异常。
在发生错误之前,查找程序中的最后一行代码。为此,您可以使用调用堆栈来查看程序所做的函数调用链,以达到崩溃的程度。沿着列表向下,直到找到您的某个功能。你看到了什么指针吗?当你打电话给那个功能时,你能保证它们全部有效吗?如果没有,那么你确定你应该调用那个功能吗?确保指针有效,或者避免使用空指针调用函数。
答案 1 :(得分:0)
0xC0000005: Access violation reading location 0x00000008.
这表示指针错误。没有指针显示指向0x00000008
这样的低地址。您没有提供足够的信息,请尝试在调试器下运行该程序。