从一个双向链表中移除一个链表
{
LIST_ENTRY A;
LIST_ENTRY B;
LIST_ENTRY C;
A.Flink = &B;
B.Blink = &A;
B.Flink = &C;
C.Blink = &B;
C.Flink = &A;
A.Blink = &C;
RemoveEntryList(&B);
system("pause");
};
BOOLEAN RemoveEntryList(IN PLIST_ENTRY Entry)//参数为需要移除的链表
{
PLIST_ENTRY BlinkNode;
PLIST_ENTRY FlinkNode;
FlinkNode = Entry->Flink;//
BlinkNode = Entry->Blink;//
BlinkNode->Flink = FlinkNode;
FlinkNode->Blink = BlinkNode;
return (BOOLEAN)(FlinkNode == BlinkNode);
}