- 博客(12)
- 收藏
- 关注
原创 C语言数据结构之双向链表(双向循环带头链表)
这也就引出了我们最后要说的循环,即这个链表是一个环,头连结着尾巴(想到了苯环和衔尾蛇hhhhh),而这就会引起一些问题,比如要是打印这个链表我们的循环打印应该怎么开始和结束,要查找节点的话头定在哪,因为环的话每个节点都可以是头和尾,而上面的哨兵位节点就相当于给我们定义了头和尾节点。而带头即我们的哨兵位节点,他不是我们单链表里面的第一个节点的头结点,而是在链表之外的一个节点,他不存储有效的数据,但是会链接在我们的循环列表里,以防止我们的遍历链表出现死循环。首先我们来解释一下这三个词,即双向、带头和循环。
2024-05-13 21:03:29 193 2
原创 C语言数据结构之单链表(单向不带头不循环链表)
链表其实就是类似于我们熟知的火车,一节一节的连接起来,每一节都存储着一个数据,同时又牵连着下一个数据,是一种物理结构上不连续但逻辑结构上连续的存储结构。接下来便是单链表的实战操作。
2024-05-13 20:50:44 167 1
原创 C语言数据结构之顺序表
数据结构顾名思义,是由数据和结构两个名词组合而成,是计算机存储、组织数据的方式。其实就是数据是怎么排列的,彼此之间有什么样的联系,就像一个班级里的学生一样,每个人都是一个数据,但不一样的班有不一样的学生,每个人不一样,彼此之间的关系结构也大相径庭,或者相差不大有相似性。
2024-05-13 20:27:47 190 1
原创 C语言之内存操作函数
为什么会有内存操作函数呢?再之后我们如果想存更大的数组的时候,比如存20个整数,这个数组arr就不能满足我们的要求了,就需要创建新的数组才可以,这时候就可能造成空间的浪费。为了避免这种情况的发生,我们有了动态内存管理,可以使我们自由申请调整释放空间,非常的灵活好用。
2024-04-04 16:46:58 356 1
原创 C语言的自定义类型
与我们介绍完的结构体类似,联合体也是一个可以包含多种类型的整体。但是编译器只为最大的成员分配足够的内存空间。联合体的特点是所有成员共⽤同⼀块内存空间。所以联合体也被称为:共用体。而因为所有成员是公用一块内存空间的,当一个变量被改变的时候所有的变量都会跟着被改变。而联合体的大小如果可以容纳所有的变量的话,就需要至少能容纳最大的变量.union Unchar c;int i;
2024-03-23 18:30:11 1131 1
原创 整型字符型与浮点型在内存中的存储
首先我们知道整数的二进制有原码反码补码三种表示形式:对于有符号整数(signed int)其二进制最高位为符号位,如果为0则为正数;1的话为负数。无符号整型(unsigned int)无符号位,最高位也是数值位。接下来我们看有符号的整数。正数的原码反码补码均相同,但负数的原码反码补码均不相同,反码为原码符号位不变,数值位二进制位全部取反,然后补码为反码+1.
2024-03-20 15:52:13 745 1
原创 内存操作函数和字符操作函数及其模拟实现
此类函数是对字符进行判断,如果符合函数条件就返回真(非0)否则返回假(0)。需包含头文件ctype.h而利用ASCII码表和上述函数我们可以进行对字符串大小写转换或者提取字符串中特殊字符的操作。
2024-03-18 15:48:20 876 1
原创 C语言指针小结2
对于数组指针的定义与普通的指针变量有一点区别int main()return 0;我们在定义时,首先看他是指针,所以在指针变量p前加*代表他是指针变量,然后就是后面的[5]代表他是数组指针,指向的数组有5个元素,最后时前面的int代表数组指针指向的数组中的元素时int类型。相应的二维数组的定义int main()//三行两列的二维数组return 0;
2024-03-12 22:19:47 1018
原创 C语言学习
本人23,现研二学生,学习方向是密码学,比较偏理论证明,觉得需要一些实际技能来应聘工作,遂报名参加比特寒假集训营,希望可以对C语言有全面系统的学习,以便在以后的求职路上有一技之长。现在课程不多,希望可以每天在有课的情况下先把课三个小时学完然后做完作业,然后自己复现一下老师课上讲的程序;如果没课的话就在b站看看以前的录播课,然后往后赶赶进度,反正就是别断,每天都学学,寒假不落下,有事可干。希望以后能进个大场吧,先加油再说。
2024-01-16 19:00:16 316 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人