自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 深入理解指针4

所以根据上面关于qsort的概念,我们对冒泡函数进行修改。在C语言的标准库中,

2024-04-23 23:40:41 244

原创 深入理解指针3

在前面介绍了指针数组,指针数组是一种数组,数组中存放的是地址(指针)。其实,数组指针式一种指针变量。整形指针变量存放的是整形变量的地址,能够指向整形数据的指针。浮点型指针变量:float *pf;存放浮点型变量的地址,能够指向浮点型数据的指针。那么数组指针变量应该就是:存放的是数组的地址,能够指向数组的指针变量。为了让大家更好的区分指针数组和数组指针,请大家看下下面的这道题,分心下哪个是数组指针,哪个是指针数组。//p1优先和方块结合,则说明p1是一个数组名,数组的每一个元素是int*。

2024-04-14 23:32:52 428 1

原创 详细了解指针2

如果不符合就报错终止运行。这个宏常常被称为“断言”

2024-03-17 23:31:25 778 1

原创 详细了解指针1

虽然整型变量占用4个字节,我们只要知道了第⼀个字节地址,顺藤摸⽠访问到4个字节的数据也是可⾏的。比如,上述的代码就是创建了整型变量a,内存申请4个字节,用于存放整数10,其中每个字节都有地址。根据上面的代码可以看出,会打印出来008FF87C的地址,&a取出的是4个字节中较小的地址。上下两个地址不一样是因为,每一次执行程序,系统会重新分配地址给a。为了得到a的地址,我们就需要一个操作符(&),取地址操作符。每个内存单元也有一个编码,有了这个内存单元编码。内存划分为一个个内存单元。

2024-02-27 22:54:40 333

原创 DS18B20温度传感器

DS18B20是一种数字温度传感器,应用非常广泛。它输出的是数字信号,同时具有体积小,硬件资源耗费少,抗干扰能力强,精度高等特点。

2024-01-09 16:23:55 3167

原创 IIC总线解读

因为我们是给24C02通信的,24C02是一个存储器,它可以存储256个字节。而我们发送的8位寄存器地址正好可以访问这256个字节。

2023-12-19 22:29:56 957

原创 用C语言写一个扫雷游戏

再继续分析,我们在棋盘上布置了雷,棋盘上雷的信息(1)和⾮雷的信息(0),假设我们排查了某 ⼀个位置后,这个坐标处不是雷,这个坐标的周围有1个雷,那我们需要将排查出的雷的数量信息记录 存储,并打印出来,作为排雷的重要参考信息的。假设我们排查(8,6)这个坐标时,我们访问周围的⼀圈8个⻩⾊位置,统计周围雷的个数时,最下⾯的三 个坐标就会越界,为了防⽌越界,我们在设计的时候,给数组扩⼤⼀圈,雷还是布置在中间的9*9的坐标上,周围⼀圈不去布置雷就⾏,这样就解决了越界的问题。如果位置不是雷,就显⽰周围有⼏个雷。

2023-12-18 22:44:13 845 1

原创 串口UART

不要求收发双方时钟的严格一致,实现容易,设备开销较小,但每个字符要附加2~3位用于起止位,各帧之间还有间隔,因此传输效率不高。传输线少,长距离传送时成本低,且可以利用电话线、网线等设备传输,但数据的传送控制比并行通信复杂。此时,传输数据的位之间的距离均为“位间隔”的整数倍,同时传送的字符间不留间隙,即保持。传送速度快,但因需要多根传输线,曾经在近距离、高速率通信中使用。送方时钟对接收方时钟的直接控制,使双方达到完全同步。发送方对接收方的同步可以通过两种方法实现。数字信号转换成模拟信号。

2023-12-07 23:16:53 1268 1

原创 单片机中的中断概念

T0和T1都具有计时和定时两种工作方式。对T0和T1,在特殊功能寄存器TMOD中都有一个控制位——C/T来选择T0和T1是定时器还是计数器。定时器和计数器其本质是一个加法(或者减法)的计数器,其本质是对脉冲进行计数。只是计数脉冲来源不同:如果计数脉冲来自系统时钟,则为定时方式,此时定时器/计数器每12个时钟或者每6个时钟得到一个计数脉冲。计数值加1;如果计数脉冲来自单片机外部引脚(T0是P34,T1是P35),则位计数方式,每来一个脉冲就加1。

2023-12-03 23:38:27 664 1

原创 C语言分支和循环语句

所以4 && 2 == 1,其实是4是true,2也是true,与的结果是true,所以是1。而按位操作,4的二进制是0100, 2的二进制是0010,也就是0100&0010=1001,因为4和2的2进制有不相同的所以4&2==0.如下面编码可以清晰的看出&和&&的区别.其实if,else if,else。关系运算符需要注意:1.==相等运算符和=赋值运算符不一样 2.多个关系运算符不能连用,也就是说a

2023-12-03 12:20:59 1015

原创 每日练习题

D:用户定义的标识符只要满足标识符命名规则没有特殊要求,最好命名有意义的。标识符的命名规则,由下划线字母数字组成,且必须以下划线和字母开始,不能以数字开头。B: 标识符的长度最多不能超过63个字符。解析:A:关键字既不能做变量名也不能做变量名,所以A错误。可以有参数,有返回值。参数和返回值没有必然联系;可以没有参数,有返回值;可以没参数,没返回值;解析:一个函数可以有参数,没有返回值;,也不能和关键字 一致。

2023-11-29 17:28:02 334

原创 关于51单片机的知识总结

51单片机基础学习

2023-10-24 23:27:10 893

空空如也

空空如也

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

TA关注的人

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