摘要: 当函数执行时,局部变量被分配到函数的栈帧中,也称为栈上分配。栈帧是存储函数调用期间的局部变量、参数、返回地址和其他相关信息的内存区域。 当函数中的局部变量发生值变化时,它们实际上是通过栈上的内存地址来进行赋值的。 传入参数和局部变量被分配到栈帧中的不同位置,根据编译器的实现和函数调用约定,它们在栈上 阅读全文
posted @ 2023-10-23 15:44 代代代码 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 栈是由编译器在需要时分配的,不需要时自动清除的变量存储区。里面的变量通常是局部变量、函数参数等。堆是由malloc()函数(C++语言为new运算符)分配的内存块,内存释放由程序员手动控制,在C语言为free函数完成(C++中为delete)。栈和堆的主要区别有以下几点: (1)管理方式不同。 栈编 阅读全文
posted @ 2023-10-23 15:43 代代代码 阅读(52) 评论(0) 推荐(0) 编辑
摘要: 显示屏接口一般有I2C、SPI、UART、RGB、LVDS、MIPI、EDP和DP等。下面简要总结一下。 01 中小屏接口I2C、SPI、UART 一般3.5寸以下的小尺寸LCD屏,显示数据量比较少,普遍采用低速串口,如 **I2C、SPI、UART** 。 1.1、I2C: I2C总线是半双工,两 阅读全文
posted @ 2023-10-23 15:42 代代代码 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 结构体函数注册使用 知识点 结构体 宏定义 结构体成员的使用 #include <stdio.h> #include <stdio.h> #include <stdlib.h> struct test { void (*test_fun)(void); }; #define register_tes 阅读全文
posted @ 2023-10-23 15:41 代代代码 阅读(5) 评论(0) 推荐(0) 编辑