- 博客(5)
- 收藏
- 关注
原创 Linux vs Windows:嵌入式开发环境深度对比与选择指南
没有绝对"最好"的环境,只有最适合项目需求的选择。实时性要求、硬件资源、团队技术栈、长期维护成本四大要素。您更倾向于哪种开发环境?欢迎在评论区分享您的实战经验!延伸阅读《ARM嵌入式Linux系统开发详解》Windows IoT官方文档注:本文部分数据基于ARM Cortex-A53平台测试,实际情况可能因硬件配置有所差异。希望这篇博客对您的读者有所帮助!如需补充具体案例或技术细节,可随时告知调整。
2025-03-06 10:56:53
806
原创 STM32寄存器,标准库和HAL库编程(浅谈)
HAL(硬件抽象层)库是由芯片制造商(如 STMicroelectronics)提供的高抽象层的硬件控制库。HAL 库封装了更多的硬件细节,提供了更通用的接口,旨在增强代码的可移植性和通用性。
2024-09-20 14:58:22
1836
原创 snprintf-更安全的字符串格式化输出
的大小为 30 字节而不是 50 字节,那么原本应该能容纳 "Number: 123, Pi: 3.14" 连同终止符 '\0' 的空间变得不足。只有 30 个字节,而 "Number: 123, Pi: 3.14" 占用 18 个字符加上终止符 '\0',总共 19 字节,看起来似乎是足够的。太小而无法容纳所有的格式化输出,结果可能会导致缓冲区溢出,这是一种常见的安全问题。,它可以接受一个额外的参数来指定最大写入的字符数,从而避免缓冲区溢出。的值非常大,或者格式化字符串包含更多的文本,就可能导致溢出。
2024-08-07 11:46:05
787
原创 浅谈memcpy和memmove的区别
选择如果源和目标内存区域不重叠,可以使用memcpy。如果源和目标内存区域可能重叠,应使用memmove。注意事项不论使用哪个函数,都需要确保复制的字节数正确,特别是当涉及到字符串时。如果复制的内存块包含字符串,需要确保复制的字节数包括空终止符\0。
2024-08-01 20:42:40
1509
原创 C语言双向链表
首先定义一个结构体来表示双向链表中的节点。c深色版本2 int data;// 存储的数据// 指向下一个节点的指针// 指向前一个节点的指针5} Node;
2024-07-30 19:14:58
505
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人