c語言L->next=p;是什麼意思?使用者2943129118415912020-01-03 16:57:35

L->next=p;表示將變數p賦值給結構體指標L所指的next變數。一般多用於連結串列、佇列和堆疊等。舉例說明如下:(以連結串列為例)// 定義連結串列結點typedef struct node{ int data; // 資料域 struct node *next; // 指標域}linklistlinklist *head=(linklist *)malloc(sizeof(linklist)); // 建立一個連結串列頭結點linklist *p1=(linklist *)malloc(sizeof(linklist)); // 建立一個連結串列結點linklist *p2=(linklist *)malloc(sizeof(linklist)); // 建立一個連結串列結點p1->data = 1; // 對結點p1的資料域進行賦值p2->data = 2; // 對結點p2的資料域進行賦值head->next = p1; // 將結點p1連線在頭結點之後// (此處的head->next = p1類似於L->next = p的意思)p1->next = p2; // 將結點p2連線在p1結點之後p2->next = NULL; // p2為尾結點// 經過上面的操作之後,就建立了一個連結串列head->p1->p2 條萊垍頭