第一次用C++写链表
来源:互联网 发布:mac itunes 导入铃声 编辑:程序博客网 时间:2024/06/03 08:09
malloc函数
头文件:#include <malloc.h>
或 #include <alloc.h>
(注意:alloc.h 与 malloc.h 的内容是完全一致的。)
功能:分配长度为num_bytes字节的内存块
说明:如果分配成功则返回指向被分配内存的指针,否则返回空指针NULL。
当内存不再使用时,应使用free()函数将内存块释放。
附上非常简单的链表代码
(因为不会写C++,所以基本是看一句写一句写出来的╮(╯▽╰)╭)
#include <stdio.h>#include <stdlib.h>#include <malloc.h>//定义链表中的节点typedef struct node { int member; //对象 struct node *pNext; //下一指针}Node, *pNode;//创建链表函数pNode CreateList() { int i; //用于循环 int len; //存放有效字节字数 int val; //临时存放用户输入数据 pNode pHead = (pNode)malloc(sizeof(Node)); //分配一个不存放数据的头结点 pNode pTail = pHead; //链表尾节点先设定为头结点 pTail->pNext = NULL; //将尾指针的pNext置为空 printf("请输入节点个数:"); scanf_s("%d", &len); for (i = 0; i < len; i++) { printf("请输入第%d个节点的数值:", i + 1); scanf_s("%d", &val); pNode pNew = (pNode)malloc(sizeof(Node)); //为节点分配空间 pNew->member = val; //将用户输入的数据赋给节点的成员 pTail->pNext = pNew; //将尾节点的指针指向新的节点 pNew->pNext = NULL; //将新节点指针置为空 pTail = pNew; //尾节点设置为新的节点 } return pHead; //返回头节点}void TraverseList(pNode pHead) { pNode p = pHead->pNext; while (p != NULL) { //节点不为空的话继续循环 printf("%d ", p->member); p = p->pNext; } printf("\n"); return;}int main(){ pNode pHead = NULL; //定义初始化头节点,等价于 struct Node pHead == NULL pHead = CreateList(); //创建一个非循环单链表,并将该链表头节点地址赋给pHead TraverseList(pHead); //调用遍历链表函数 return 0; }
阅读全文
0 0
- 第一次用C++写链表
- 五子棋 第一次用C编写的小游戏
- 第一次用c语言编写程序
- 第一次C程序设计作业
- 第一次C程序设计作业
- 第一次C程序设计作业
- 第一次c语言
- 第一次C程序设计作业
- 第一次C程序设计作业
- 第一次c程序设计作业
- 第一次C程序报告
- 第一次C语言作业
- 第一次C程序报告
- 第一次C语言程序设计报告
- 第一次c程序作业
- 第一次C语言作业
- 第一次c语言作业
- 第一次接触C语言
- C语言 键盘模拟文件结尾
- java并发API中ThreadPoolExecutor类提供的执行所有任务和任一任务的2个方法整理
- 学习切莫急功近利,事业切莫浮躁!
- 基础面试题——Javascript
- opencv学习笔记系列文章
- 第一次用C++写链表
- dictionary字典
- Linux驱动之字符设备的简单分析
- 模型汇总19 强化学习(Reinforcement Learning)算法基础及分类
- 文章标题
- html5新增语义化标签
- Cookie/Session机制详解
- 数据结构的线性表部分知识
- Android判断网络是否可用并且开启网络