我在C中用一些代码段疯狂,我希望能够进行干预。我有:
typedef struct node{
int value;
node_t *next;
node_t *prev;
} node_t;
node_t current_node;
node_t other_list;
void transfer(node_t **ipp)
{
if (*ipp == NULL)
{
*ipp = current_node;
current_node->prev->next = current_node->next;
}
else
{
(*ipp)->next = current_node;
ipp = &(*ipp)->next;
current_node->prev->next = current_node->next;
}
}
int main(void)
{
int i;
for(i= 0; i< 10; i++)
{
transfer(&other_list);
current_node = current_node->next;
}
我现在不能从第一个列表中删除项目并将它们转移到第二个列表吗?也不应该插入最后一个节点的other_list点?
答案 0 :(得分:1)
我看到两个问题:
current_node->prev
可能是null
。