我有一个动态列表,其中a是当前点,a-> prev - previous元素,a-> next - 下一个元素,我需要删除列表中的一个元素(并设置前一个/下一个相邻元素彼此)从动态列表中删除元素
if(a->va == var && a->pa == pav){
a -> prev -> next = a -> next;
a -> next -> prev = a -> prev;
delete a;
}
我有一个动态列表,其中a是当前点,a-> prev - previous元素,a-> next - 下一个元素,我需要删除列表中的一个元素(并设置前一个/下一个相邻元素彼此)从动态列表中删除元素
if(a->va == var && a->pa == pav){
a -> prev -> next = a -> next;
a -> next -> prev = a -> prev;
delete a;
}
您必须处理边缘情况。
如果找到的元素是列表中的第一个元素,则a -> prev
为NULL。
同样,如果它是最后一个,a -> next
是NULL。
你需要更好地描述你的问题。 *它不像这样工作*不是有用的诊断。 –
我需要删除列表中的1个元素 – user2921071
@ user2921071请咨询[我如何问一个好问题?](https://stackoverflow.com/help/how-to-ask)和[如何创建一个最小,完整和可验证示例](https://stackoverflow.com/help/mcve) –