单链表

https://www.icourse163.org/learn/IDXY-1206905801?tid=1450771731#/learn/content?type=detail&id=1217619479

https://www.icourse163.org/learn/IDXY-1206905801?tid=1450771731#/learn/content?type=detail&id=1217619480&sm=1

一、静态链表

在这里插入图片描述

#include<stdio.h>
struct Node{
   
	int data;//数据域 
	struct Node* next;//指针域 
}; 

int main(){
   
	
	struct Node1= {
   1,NULL};
	struct Node2= {
   2,NULL};
	struct Node3= {
   3,NULL};
	
	Node1.next = &Node2;
	Node2.next = &Node3;
	
	return 0;
} 

二、动态链表

1、分配内存空间函数malloc()

调用形式:(类型说明符*) malloc (size)
功能:在内存的动态存储区中分配一块长度为“size”字节的连续区域。

例如:pc=(char *) malloc (100);

2、分配内存空间函数calloc()

调用形式:(类型说明符*)calloc(n,size)
功能:在内存动态存储区中分配n块长度为“size”字节的连续区域。

例如:ps=( struct stu*) calloc(2,sizeof (struct stu));

3、释放内存空间函数free()

调用形式:free(void *ptr);
功能:释放ptr所指向的一块内存空间,ptr是一个任意类型的指针变量,它指向被释放区域的首地址。

4、动态内存分配和释放例题

分配一块区域,输入一个学生数据并输出

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

struct student
{
   
	int num;
	char *name;
	char sex;
	float score;
} *ps
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值