假设在单向链表中有如下节点
struct node
{
int data;
struct node *next;
};
有如下链表:header ->node1 ->node2 ->NULL ;
当定义一个临时指针p遍历时,如果p指向了NULL,此时程序不会报错,但如果出现p->data 或p->next时,则会引发了异常: 读取访问权限冲突。 p 是 nullptr, nullptr是空指针。
原因是你不能取空指针的任何数据和指针,即没有权限读取,更不能设置。
假设在单向链表中有如下节点
struct node
{
int data;
struct node *next;
};
有如下链表:header ->node1 ->node2 ->NULL ;
当定义一个临时指针p遍历时,如果p指向了NULL,此时程序不会报错,但如果出现p->data 或p->next时,则会引发了异常: 读取访问权限冲突。 p 是 nullptr, nullptr是空指针。
原因是你不能取空指针的任何数据和指针,即没有权限读取,更不能设置。