質問です 参考書から激しく抜粋なのですが
typedef struct node_tag{
struct node_tag *next; /*次ノードへのリンク*/
struct node_tag *prev; /*前ノードへのリンク*/
void *data;
}node_t;
っていうリスト構造体があったとして
int list_is_empty(node_t *head)
{
return head==head->next;
}
って関数があるとします
参考書によるとリストが空かどうか判断する関数らしいのですが
なんでhead->nextなheadを返すことによって
真か偽かを判断できるのでしょうか?
厨房でごめんなさい