假定建立了以下链表结构,指针p、q分别指向如图所示的结点,则以下可以将q所指结点从链表中删除并释放该结点的语句组是______。

admin2009-02-15  35

问题 假定建立了以下链表结构,指针p、q分别指向如图所示的结点,则以下可以将q所指结点从链表中删除并释放该结点的语句组是______。

选项 A、free(q);p->next=q->next;
B、(*p).next=(*q).next;free(q);
C、q=(*q).next;(*p).next=q;free(q);
D、q=q->next;p->next=q;p=p->next;free(p);

答案2

解析 选项A的错误在于,先已经把q结点给释放,无法再进行余下语句了:选项C和D的错误在于因为有了q=(*q).next做了赋值,则free(q)释放了原来q后面的一个结点。
转载请注明原文地址:https://jikaoti.com/ti/t2K0FFFM
0

最新回复(0)