構造体を使用して 3 つの要素を持つリンク リストを実装していました。連結リストの要素数を計算する関数を導入する前は問題なく動作していましたLinked_list
。以下は、C でのプログラムのコードです。
ハ
#include <stdlib.h>
#include <stdio.h>
struct node{
int data;
struct node* next;
};
struct node* Linked_list();
int Length();
int main()
{
int length;
Linked_list();
length = Length();
printf("%d", length);
}
struct node* Linked_list() {
struct node* head = NULL;
struct node* second = NULL;
struct node* third = NULL;
head = malloc(sizeof(struct node));
second = malloc(sizeof(struct node));
third = malloc(sizeof(struct node));
head->data = 1;
head->next = second;
second->data = 2;
second->next = third;
third->data = 3;
third->next = NULL;
printf("%d %d", head->data, second->data);
}
int Length(struct node* head){
struct node* current = head;
int count = 0;
while(current!=NULL)
{
count++;
current = current->next;
}
return count;
}