在0x00C87963处的未处理异常....:0xC0000005:访问冲突读取位置0xCCCCCCE0

时间:2013-08-04 14:36:04

标签: c++ exception pointers null

我不明白为什么会发生这种错误:

while (currentNode != nullptr)
    currentNode = currentNode->parent;

while循环的条件应该阻止它......

2 个答案:

答案 0 :(得分:7)

0xCCCCCCE0看起来很像0xCCCCCCCC,这是VisualC ++在调试版本中放入任何未初始化的局部变量。

所以我的猜测是你忘了设置nullptr currentNodeparent

答案 1 :(得分:2)

如果

currentNode->parent

包含一个无效的指针值,这会因访问冲突而崩溃。指针可以设置为无效值,它是nullptr不是唯一的情况。检查您设置值的位置。