linux 下c語言建立單向動態連結串列的理解
阿新 • • 發佈:2019-02-13
#include <stdio.h>
#include <malloc.h> //分配記憶體要加上這個庫函式
struct weapon {
int price;
int atk;
struct weapon* next;
}; //建立一個武器庫的結構體,記得建立完成之後要加; 如果想要例項化可以在後面直接跟結構體變數名稱
//接下來的就是動態建立單項鍊表的函式
struct weapon * creat ()
{
struct weapon * p1,*p2,*head; //建立三個 struct weapon * 型別的指標
int n=0; //建立計數變數
head=NULL; //連結串列頭暫時為空
p1=p2=(struct weapon *)malloc(sizeof(struct weapon)); //使用malloc分配sizeof(struct weapon)大小的記憶體空間
scanf("%d,%d",&(p1->price),&(p1->atk));
while((p1->price)!=0)
{
n++;
if(n==1)
head=p1;
else
p2->next=p1;
p2=p1;
#include <malloc.h> //分配記憶體要加上這個庫函式
struct weapon {
int price;
int atk;
struct weapon* next;
}; //建立一個武器庫的結構體,記得建立完成之後要加; 如果想要例項化可以在後面直接跟結構體變數名稱
//接下來的就是動態建立單項鍊表的函式
struct weapon * creat ()
{
struct weapon * p1,*p2,*head; //建立三個 struct weapon * 型別的指標
int n=0; //建立計數變數
head=NULL; //連結串列頭暫時為空
p1=p2=(struct weapon *)malloc(sizeof(struct weapon)); //使用malloc分配sizeof(struct weapon)大小的記憶體空間
scanf("%d,%d",&(p1->price),&(p1->atk));
while((p1->price)!=0)
{
n++;
if(n==1)
head=p1;
else
p2->next=p1;
p2=p1;