2 xxtk3333 xxtk3333 于 2016.01.24 00:16 提问

C语言循环链表的头节点是定义成变量好,还是定义成结构体好?

C语言循环链表的头节点是定义成变量好,还是定义成结构体好?

4个回答

caozhy
caozhy   Ds   Rxr 2016.01.24 00:19

这不过是两个不同的方式而已,并没有什么本质上的不同。

91program
91program   Ds   Rxr 2016.01.24 09:03

定义成什么,要看你节点中要保存的数据是什么。
一般来说,是需要一个结构体的。因为除了一个有效数据外,你还需要链表的指针。

a1193561652
a1193561652   Rxr 2016.01.24 12:52

都可以,不过建议定义为结构体,应为可以和后面的节点做同样的操作。

Edassap
Edassap   2016.01.24 14:31

个人推荐使用结构体,作为头结点,其存储的信息较多。单向链表为例,他有可能要存储下一节点位置,链表长度,链表名等等(特殊需求而异)。考虑到这些,仅仅拥有单个字段和类型的变量是不能满足需求的!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
C语言——结构体、局部变量和全局变量、枚举
局部变量与全局变量    按照作用域不同将变量分为 局部变量和全局变量    局部变量:定义在函数内部变量    作用域:从定义的那一行开始直到所在代码结束    生命周期:从定义的那一行开始只直到其所在代码结束    注意点:内部代码块中定义与外部代码块中的同名变量,那么内部代码中变量会覆盖外部代码块中定义的变量    局部变量只有定义没有声明      全局变量:定在函数外部变
C++结构体与指针
一个结构体变量的指针就是该变量所占据的内存段的起始地址。可以设一个指针变量,用来指向一个结构体变量,此时该指针变量的值是结构体变量的起始地址。指针变量也可以用来指向结构体数组中的元素。 通过指向结构体变量的指针引用结构体变量中的成员 下面通过一个简单例子来说明指向结构体变量的指针变量的应用。 【例7.3】指向结构体变量的指针的应用。 #include #include us
结构体可不可以声明定义为Static?
不可以. 结构体是一种用户自定义类型,跟标准类型是一样的,只是由用户自己定义的罢了。类型是不能声明为Static的,只有变量才能声明为Static。因为类型只是一种抽象,不分配内存,具体的变量才能分配内存。而且Static变量是在编译的时候分配内存的。可以将结构体成员定义为Static。 说白了,结构体是类型,不占空间, static用来定义变量,会分配空间.
php定义成NULL好还是定义成空字符串好
效果都一样,空字符串效率要高些,因为定义为NULL最后也会转换为""。
数据结构学习之循环链表结构
注:本文的主要目的是为了记录自己的学习过程,也方便与大家做交流。转载请注明来自: http://blog.csdn.net/ab198604         循环链表在单向链表及双向链表的基础之上作了一进步的概念延伸,循环链表让链表操作变的更加灵活。这是因为,单向链表与双向链表都具有链表的头结点与尾结点,如果我们进一步思考:         1单向链表的尾结点的next链域指向其头结
C语言定义结构体时注意成员变量的类型和声明顺序
定义结构体时候,结构体内的变量的声明顺序决定了结构体所占用的内存大小(内存的边界对齐原因)。 不多说,直接上代码: #include #include #include #include #include using namespace std; struct node1 //这个node占了32个字节 { int a; float f;//a 和 f 一共占8个
线程池踩坑 - 作为实例成员或方法局部变量的误区
本文目录: 1. 概述 2. 验证 3. 剖析 4. 小结 1. 概述 线程池可以把线程复用起来,减少线程创建销毁的时间和资源消耗,提高了程序任务执行的吞吐率。 就像线程属于全局使用的资源一样,线程池一般也是全局性,对整个应用进程的线程复用做有效的管理。设计者一般都会把线程池作为类的静态成员或者单例成员,存活于整个进程的生命周期。 但是还是例外地看到了类似这样的代码。 ...
9.修改学生结构体数据
程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。函数fun的功能是将形参a所指结构体变量中的数据赋给函数中的结构体变量b,并修改b中的学号和姓名,最后输出修改后的数据。 #define _CRT_SECURE_NO_WARNINGS #include #include struct student { long sno; char name[10]; float
C 语言 结构体定义变量的三种方法
菜鸟级上传的
网络协议头部详解及结构体定义
简单介绍下网络编程常用的头部