(C/C++学习笔记)线性表的顺序存储

  • 线性表接口声明
#ifndef  __MY_SEQLIST_H__ 
#define __MY_SEQLIST_H__

typedef void SeqList;
typedef void SeqListNode;

SeqList* SeqList_Create(int capacity);

void SeqList_Destroy(SeqList* list);

void SeqList_Clear(SeqList* list);

int SeqList_Length(SeqList* list);

int SeqList_Capacity(SeqList* list);

int SeqList_Insert(SeqList* list, SeqListNode* node, int pos);

SeqListNode* SeqList_Get(SeqList* list, int pos);

SeqListNode* SeqList_Delete(SeqList* list, int pos);



#endif  //__MY_SEQLIST_H__
  • 测试线性表
#include "stdlib.h"
#include "stdio.h"
#include "string.h"
#include "seqlist.h"


typedef struct _Teacher
{
    char name[64];
    int age ;
    int buf;
}Teacher;

void main()
{
    int ret = 0, i = 0;
    Teacher t1, t2, t3;
    SeqList* list = NULL;

    t1.age = 10;
    t2.age = 20;
    t3.age = 30;

    list = SeqList_Create(10);


    ret = SeqList_Insert(list, (SeqListNode*) &t1, 0);
    ret = SeqList_Insert(list, (SeqListNode*) &t2, 0);
    ret = SeqList_Insert(list, (SeqListNode*) &t3, 0);

    //循环遍历
    for (i=0; i<SeqList_Length(list); i++)
    {
        Teacher *tmp = (Teacher *)SeqList_Get(list, i);
        printf("age:%d \n", tmp->age);
    }


     SeqList_Destroy(list);
    system("pause");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值