408-数据结构-线性表与c基本函数说明

线性表

定义:具有相同数据类型的n(n>=0)个数据元素的有限序列

定义内重点:

  1. 数据类型相同
  2. 有限个
  3. 有顺序
  4. n可以为0
    如果用数学符号描述
    L = ( a 1 , a 2 , . . . . , a i , a i + 1 , . . . . , a n ) L=(a_{1},a_{2},....,a_{i},a_{i+1},....,a_{n}) L=(a1,a2,....,ai,ai+1,....,an)
    概念:
  • 其中下标表示线性表中的第i个,也就是位序位序从1开始,而计算机存储从0开始
  • 除了第一个元素,每一个元素都具有一个直接前驱
  • 除了最后一个元素,每一个元素都具有一个直接后继

c的基本函数

主要为类型别名、空间开辟回收函数

typedef

typedef	<数据类型名称>	<别名>

通常用来给一个系统定义的基本类型来定义一个别名,方便编写程序。最经常与c中的结构体定义连用

struct student{				//声明一个学生结构体
	int id;
	char * name;
};
struct student stu;			//定义一个学生结构体变量,叫做stu

定义一个新的就需要写struct不方便。

typedef struct{
	int id;
	char *name;
}student; 
student stu;

需要特别说明

typedef struct{
	int val;
	Node * next;
}Node, *List;
List i_am_list;

这里的List其实等价于Node *,即声明List就是声明这个结构体指针。通常这么写是为了区分这个是链表头指针还是链表当中的一个结点。

malloc申请空间函数与free回收空间函数

	void * malloc(int size);	//调用函数,程序向操作系统申请一段连续区域,并且返回连续区域的头指针,size单位为B字节
	free(void * ptr);			//调用函数,释放ptr在malloc函数申请的内存空间
	int sizeof(name);				//传入通常为基本数据类型名称或自动义数据类型名称,返回一个单位所占用的字节数

一个进行内存空间的申请,一个为内存资源的回收,通常二者成对存在。
调用malloc传入参数为字节数,通常与size函数搭配使用,sizeof(数据类型名称) * 需要申请的个数。
指针说明
可以理解为指针也是一个数据类型,但是内部存放的数据都是每一个变量的地址,位数取决于操作系统。所以无论是int类型还是其他什么自定义类型的指针大小都是相同的,取决于操作系统。但是对于指针进行分类是数据读取时候的需要。读取数据不仅需要知道该数据的首址,还需要知道该数据占多少个字节。说明了该指针的类型,计算机也就知道应该从首址后面读取多少个字节。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值