- 博客(33)
- 收藏
- 关注
原创 C语言打印输出红色字体
由上可知,在输出时候加上 “\033[;\033[0m ” 即可使得输出的字体和背景是有颜色的。下面是颜色的定义:。可见,此时输出的字体和背景已经有了颜色。最后再看一个实例:。
2024-08-27 16:03:11
845
原创 VS Code安装及使用教程
6)按住:ctrl + shift + p ,之后输入 create c project ,之后新建项目,选择当前文件夹即可。main.c在src文件夹,写代码,在src里面写即可,写完ctrl + s保存 ctrl + q退出。10) vscode-icons, VSCode 图标插件,主要是资源管理器下各个文件夹的图标。5)code ./ //code进入当前的文件夹,文件夹为空。2) C/C++ Snippets,即 C/C++重用代码块。4) Code Runner,即代码运行。
2024-07-28 11:04:41
489
原创 C语言中内存四区的本质分析
概念:既能读又能写的内存对象,称为变量;注意:数据类型只是模具,编译器并没有分酤空间,只有根据类型(模具)数据类型的作用:编译器预算对象(变量)分配的内存空间大小。类型相同的数据有相同的表示形式、存储格式以及相关的操作。数据类型可理解为创建变量的模具:是固定内存大小的别名。变量定义形式:类型标识符,标识符,…创建变量(实物),编译器才会分配空间。给类型起别名.c。操作系统把物理硬盘代码load到内存。堆栈区分析.c。操作系统把C语言代码分成四个区。“类型”是对数据的抽象。
2024-07-27 11:05:14
326
原创 C语言中的“悬空指针”和“野指针”是什么意思?
因为“野指针”可能指向任意内存段,因此它可能会损坏正常的数据,也有可能引发其他未知错误,所以C语言中的“野指针”危害性甚至比“悬空指针”还要严重。C语言中的指针可以指向一块内存,如果这块内存稍后被操作系统回收(被释放),但是指针仍然指向这块内存,那么,此时该指针就是“悬空指针”。提起C语言大部分开发者很自然就会想到指针二字,没错,作为C的核心和灵魂,它的地位咱们就不再赘述了,今天我们想跟大家讲的是指针中的两个特有名词:“悬空指针”和“野指针”。最难调试的 bug 总是不能轻易复现的 bug,对不?
2024-07-18 10:42:35
179
原创 整理电路原理图中的“英文缩写”
断电不一定非要把芯片的外部供电给断掉,如果芯片自带PD脚,直接拉一下PD脚,也相当于断电了。P(GPIO):很多小芯片,例如单片机,接口通用化比较高,大部分都是GPIO口,做什么用都行,就不在管脚上标那么清楚了,直接用P1,P2,P1_3这样的方式来标明。串行信号线速度很高,随便就上GHz,电压很低只有几百毫伏,因此很容易被干扰,要做成差分信号,即用两根线传一个数据,一个传正的一个传负的。其他的接口,慢的像I2C、SPI,快的像MIPI、RJ45等,都是地址和数据放在一组线上传输的,就没有地址线了。
2024-07-13 11:19:49
584
原创 万字 | 菊花厂C语言编程10大规范
公共模块中的函数及底层函数应该有较高的扇入。此函数若被多个线程调用的话,其结果可能是未知的,因为当(**)语句刚执行完后,另外一个使用本函数的线程可能正好被激活,那么当新激活的线程执行到此函数时,将使g_exam赋于另一个不同的para值,所以当控制重新回到“temp =square_exam ( )”后,计算出的temp很可能不是预想中的结果。头文件循环依赖,指a.h包含b.h,b.h包含c.h,c.h包含a.h之类导致任何一个头文件修改,都导致所有包含了a.h/b.h/c.h的代码全部重新编译一遍。
2024-07-04 18:05:56
1283
原创 总结嵌入式C语言知识点
嵌入式C语言在处理硬件物理地址、位操作、内存访问方面都给予开发者了充分的自由。通过数组,指针以及强制转换的技巧,可以有效减少数据处理中的复制过程,这对于底层是必要的,也方便了整个架构的开发。对于任何嵌入式C语言开发的从业者,清晰的掌握这些基础的知识是必要的。
2024-06-30 09:20:58
425
原创 由于MDK5.0A没有STM32F103程序错误 stm32f10x.h(298): error: #67: expected a “}“
方法2、原先的Keil::STM32F1xx_DFP安装包是你直接从uVision4升级到uVision5后保留的,使用PackInstaller将原先的包1.0.2 Remove + Delete Pack,然后重新下载安装Keil::STM32F1xx_DFP,版本应该是1.0.0,问题解决,库不兼容。原来是有括号的,不做标识符来处理,而新版的,如图,直接说明了出来,那就没有必要,可以根据C/C++知识自己去推断;Build target '103RE_安卓_Print1'方法2没试,不知是否可行!
2024-06-12 14:57:01
393
原创 用stm32f10x.h文件时的问题error: #35: #error directive: “Please select first the target STM32F10x
照搬照抄一下
2024-06-12 09:27:06
1303
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人