如果在insertAfter之后调用insertBefore或者多次调用insertAfter,则以下代码会导致分段错误。
struct node {
struct node *previous;
struct node *next;
char item[];
};
typedef struct node node;
struct list {
node *first;
node *current;
node *last;
int SizeOfData;
};
list *newList(int b) {
list *list = malloc(sizeof(list));
node *sentnode = malloc(sizeof(node));
sentnode->previous = sentnode;
sentnode->next = sentnode;
list->first = sentnode;
list->current = sentnode;
list->last = sentnode;
list->SizeOfData = b;
return list;
}
使用的列表是:
return $resource(baseURL+'client/:id',{id: youridhere} ,{'update':{method:'PUT'}});
答案 0 :(得分:2)
您忘记设置previous
的{{1}}和next
指针。 newNode
中还有另一个错误(更改了行)。
insertAfter