自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 C语言实现队列

QEtype val;}QEnode;int size;}QE;这里我们把队列的队头,队尾以及队列的长度记录下来。这样会对我们进行的操作有很大的便利。

2024-04-23 22:47:51 421 10

原创 C语言实现栈

我们的线性结构讲了顺序表以及链表,并且基于顺序表我们实现了通讯录。那么接下来我们继续学习其他的数据结构栈。

2024-04-20 17:46:41 874 4

原创 链表(C语言)

前面几篇文章我们详细介绍了顺序表,以及基于顺序表来实现的通讯录。今天我们连介绍一下链表的下一个结构链表。那么链表和顺序表究竟有什么区别呢?他们两个的优缺点分别是什么。今天这篇文章就带大家了解一下链表。

2024-04-18 21:52:11 1078 6

原创 通讯录的实现(顺序表)

上篇文章我们讲解的顺序表以及顺序表的具体实现过程,那么我们的顺序表在实际应用中又有什么作用呢?今天我们就基于顺序表来实现一下通讯录。

2024-04-17 20:34:38 885 6

原创 顺序表(C语言版)

前言:本篇文章我们来详细的讲解一下顺序的有关知识,这篇文章中博主会以C语言的方式实现顺序表。以及用顺序表去实现通讯录的代码操作。

2024-04-15 20:21:48 980 12

原创 C语言实现贪吃蛇

今天给大家详细介绍一下小游戏贪吃蛇的代码。

2024-03-11 16:28:15 981 10

原创 WIN32部分知识介绍

🌈前言:此篇博客是为下一篇的《贪吃蛇》的做的前戏工作,这篇会讲到贪吃蛇所用到的一些工具以及函数。

2024-03-10 19:47:54 858 9

原创 (数据结构练习题)合并两个有序数组

🌈前言:在刷题过程中发现超精简的代码。

2024-01-26 13:45:33 517 10

原创 (C语言)编译和链接

前言=͟͟͞͞💌:对于现在的各种编译器而言许多都是好多个功能的集成,那么我们的代码到底是如何去实现的呢?难道我们的计算机可以直接读懂我们所写的代码,并运行吗?对于很多细心的小伙伴们可能会想这样的问题。这篇文章带大家来了解一下编译和链接。在ANSI C的任何⼀种实现中,存在两个不同的环境。第1种是翻译环境,在这个环境中源代码被转换为可执⾏的机器指令。第2种是执⾏环境,它⽤于实际执⾏代码。下面来详细的给大家介绍一下下面这两种环境。

2024-01-20 20:45:27 1714 9

原创 文件操作(二)

͟͟͞͞🏀前言上一篇我们加们讲了什么是文件,为什么使用文件,以及流的概念。我们继续接上一篇来继续讲解我们的文件操作,这一篇将会详细的讲如何对文件进行读写。

2024-01-14 19:44:35 900 11

原创 文件操作(一)

在我们学习文件操作之前我们先了解一下什么是文件?以及文件为什么使用文件。我们在各种编译器上打印出来之后都是在屏幕上显示之后我们将他关闭之后我们是否还能找到呢?答案是否定的那么我们如何将我们需要的数据永久的储存起来呢?那么什么又是文件呢?磁盘上的⽂件是⽂件。但是在程序设计中,我们⼀般谈的⽂件有两种:程序⽂件、数据⽂件(从⽂件功能的⻆度来分类的)。

2024-01-13 12:01:10 867 5

原创 结构体详解(结构体在内存中的存储方式)

在详细讲解结构体时我们先了解一下什么是结构体。C语⾔已经提供了内置类型,如:char、short、int、long、float、double等,但是只有这些内置类 型还是不够的,假设我想描述学⽣,描述⼀本书,这时单⼀的内置类型是不⾏的。描述⼀个学⽣需要 名字、年龄、学号、⾝⾼、体重等;描述⼀本书需要作者、出版社、定价等。C语⾔为了解决这个问 题,增加了结构体这种⾃定义的数据类型,让程序员可以⾃⼰创造适合的类型。

2023-12-05 17:39:39 2139 6

原创 整形和浮点型的存储的方式

在了解整形的存储方式之前我们需要知道什么是整形,整形包括什么。最基本的是我们熟知的各种int类型比如int,signend int,unsignet。以及short,long,long long类型,当然这些也属于int类型只是在写时将int省略比如short int,long int。除了这些int类型之外,其实我们的字符char类型也是整形,因为char类型中的字符也是基于ascii码值在内存存储的。那么我们可以盘点一下整形的类型:那么 整形在内存中又是怎么去存储的呢?

2023-12-03 22:01:03 878 5

原创 字符函数和字符串函数的使用

这个就是比较一个限定范围的两个字符串,上面我们提到strcmp函数比较的是字符ASCII码值的大小而并非字符串的长度,这个函数比较的也是ASCII码值的大小下面来给大家举一个例子。我们可以看到这个函数的返回值以及前2个参数是一样的,只是多了一个size_t的参数,那么这个参数又是干嘛的呢?正如我们标题所说下列函数为有条件限制的,所以这个参数是复印的个数。这个函数的返回值是arr2的首元素地址,第一个参数是复制到的目的地,第二个参数是复制的来源地,这两个都是一个char(*)类型的指针。

2023-11-30 21:48:47 1974 6

原创 进阶指针详解(数组指针,指针数组,函数指针)

这里的数组指针=&arr符合我们在代码中写的代表整个数组地址的情况,则这里的p就是arr整个数组的地址。我们学二维数组的时候知道二维数组就相当于与其行数相等的一维数组则我们这里的p+i就i选哪个当于拿到了第i行的首元素地址。由代码的输出结果我们可以看出函数名与&函数名所打印的结果一样,这样我们就可以总结出函数名与&函数名都是函数的地址。,这边*与[]在一个括号内说明他是一个数组,后面的传参括号说明他是一个函数,这一是因为()的优先级高与*和[]。这只是很简单的一种用法,后面会跟大家分享更多的用法。

2023-11-29 13:10:37 403 5

原创 (*(void(*)(int))0)(int)与void(single(void(*)(int))(int))(int)详解

哈楼大家好啊!今天给大家讲一下在一些复杂的代码中出现的一些代码的解释他们分别是与。看着是不是很头大,没关系啊下面我详细的介绍一下他们。

2023-11-17 19:54:15 178 3

原创 汉诺塔和青蛙跳台阶问题(递归)

这时我们又需要将第n-1个盘子挪到3号柱上,我们这时举的例子有一点少我们假想一下2号柱上的第n-1个盘子上面不是一个盘子而是n-2个盘子那我们要将第n-1个盘子放到3号柱的话是不是就需要将上面的n-2个盘子放到一号柱上。那下面我们将这个过程转换为代码。这时是不是就相当上面将n-1个盘子放到2号柱上,只不过这时的2号柱变成了一号住,但都是经过一个柱子中转之后再犟嘴后一个盘子放到3号柱上。接下来就只需要将1号柱上的盘子放到3号柱上,然后再以1号柱为跳板将第二个盘子放到3号柱上,然后在将第一个盘子放到3号柱上。

2023-11-06 20:51:43 90 3

原创 递归和迭代

首先说一下什么是递归,递归其实。但是递归是有条件的,先用一个代码展示一下什么是递归这就是一个非常简单的递归,正如概念所说,递归就是在一个函数中调用自身,而这个递归可以实现吗?答案很明显是不可以的,这个递归没有一个运行的条件递归无法停止,则会不断进行不会停止,最后则会导致栈区堆溢。既然这样那么递归的实现需要什么条件呢?1.纯在限制条件,当满足这个限制条件时递归便不再继续。2.每次递归调用之后越来越接近这个目标。那么根据这两个条件去修改这个上面这段代码就是。

2023-11-06 19:41:15 48 2

原创 详细扫雷(初始化,打印棋盘,设置雷,排查雷,展开,标记雷)

今天给大家带来的是详细版的扫雷,运用到的知识大概有函数,数组,递归等。好啦现在来开始扫雷的详细讲解把。

2023-11-02 22:33:37 99 1

原创 初级指针末尾(指针的比较,二级指针和多级指针)

前面我们学习了指针的加减法和野指针是什么和如何避免野指针的出现,接下来我们来介绍一下初级指针的最后一个点指针的比较和二级指针以及多级指针。

2023-10-29 17:13:43 85 4

原创 关于如何避免野指针以及指针的加减法

在前几期的野指针篇章中我说了野指针的几种常见的情况以及什么是野指针,没看过的兄弟们可以看看前几期的视频。!!那么话又说回来又该如何去避免野指针呢?以及我们要介绍的指针的加减法。

2023-10-26 16:32:30 176 5

原创 c语言分支循环语句

相信好多刚入学的学生都经历过体测了吧,那800或者1000有没有让你感觉到身心俱疲,那我们仔细想一下午们在跑圈的时候是不是就相当于一个循环呢,当跑完一圈是否要要再跑一圈,循环知道达成目标为止,而我们的C语言中也模仿生活中的几种情况做出了我们的循环语序。下面我们家着重的讲一下我们的分支和循环结构。当满足括号中的条件时进入代码块中执行代码块中的命令,当不满足括号中的条件时则会进入else的代码块中,去执行else中的命令。此时由于该函数是先判断条件则该函数的打印结果就是1,2,3,4,5,5一直5循环。

2023-10-24 20:10:41 44

原创 常见野指针的形式

但是在调用函数时int* p接收&a的返回值也就是a的地址但是当函数调用结束时被调用函数后所占用的内存会被释放,这就是说明int* p指代的是原本被调用时a的地址但是回到主函数后被释放,此时a并不等于时,只是说明a曾经住过这个地址但是现在不在这了,此时的地址指向的就是一个随机值,也就是一个野指针。先来说一下他的概念把:野指针就是指针指向的位置是不可知的或者是随机的不正确的,并没有明确限制的。这时同样会出现野指针的情况。//当指针指向一个数组的时候,所表示的是第一个元素也就是arr[0]的地址。

2023-10-18 12:07:44 63 2

原创 关于指针那些事

使用相同类型的指针变量来创建一个指针变量,给这个指针变量赋予int 取的变量的地址,如 int a=0 int* pc=&a 这个pc就是a所在的地址,我们可以听过pc来对a来进行改变,加或者减。这就是指针简单的一些作用。在计算机科学中,指针是编程语言中的一个对象,利用地址,它的值直接指向存在电脑储存器中另一个地方的值。指针的类型决定的是类型访问空间的大小,例如int a=0 char*pc=&a则这时听过编译器查看,通过解引用对a进行操作则只会操作一个字节,其他字节并不会改变。

2023-10-17 20:04:18 38

原创 随机取值和设置起始点rand()srand()

上面是我在百度上找的一些概念,但按照我是在0到的理解就是单独使用rand()的话他是有线性的随机值,在一定范围内可以使用他来表示随机值,但在循环中他的输出结果总是相同的。因此就需要一个随机的起点,也就是上面说的一个种子,因此就需要另一个函数srand()这个函数是设置起点的。1.rand()rand()是是c语言中常用的一个选随机数的是用线函数,但是rand()内部实现是用线性同余法实现的,是伪随机数,由于周期较长,因此在一定范围内可以认定是为随机数。srand()的库函数与rand()的库函数相同。

2023-09-27 20:39:12 104 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除