删除节点时指向该节点的指针会变成什么样?

来源:百度知道 编辑:UC知道 时间:2024/05/29 20:11:02
该指针变成NULL?还是被delete了?还是指向原来的地址?
node a;
node *p=&a;
delete a;
p=?

你写错了,delete后面要写指针,应该是delete p;
执行delete后,p的值不会变,只是释放了p原来指向的内存空间.但如果你再执行*p的话,就会发生错误,因为这块空间已被释放了.

这完全看编程者的操作
正常的过程应该是将该节点free(也就是delete),并且将该指针指向NULL
但是,如果编程有失误,你说的任何情况都有可能
因为这个不是系统的过程,是编程者操作的过程