介面標頭檔
/* * linklist.h * * Created on: 2012-11-11 * Author: inner */#ifndef LINKLIST_H_#define LINKLIST_H_#include <stdbool.h>#define SIZE 30//struct film{//char title[SIZE];//int rating;//};//typedef struct film Item;typedef int Elem;typedef struct node{Elem elem;struct node *next;} Node;typedef Node *linkList;/*初始化鏈表*/void InitializeList(linkList *list);/* 添加節點*/void addNodeList(linkList *list,Elem elem);/*擷取節點數量*/int getListCount(linkList *list);#endif /* LINKLIST_H_ */實現源檔案
/* * link.c * * Created on: 2012-11-11 * Author: inner */#include<stdio.h>#include <stdlib.h>#include"linklist.h"void InitializeList(linkList *list){*list = NULL;}void addNodeList(linkList *list, int elem){Node *p;//下一節點Node *list1 = *list;p =(Node *)malloc(sizeof(Node));p->elem = elem;p->next = NULL;/*判斷頭結點是否空*/if(list1 == NULL){ *list= p;}else{while(list1->next != NULL) list1 = list1->next;list1->next = p;}}int getListCount(linkList *list){int count = 0;Node *node = *list;while(node->next!=NULL){++count;node = node->next;}return count;}
就寫這麼多了有時間再更新