![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
大 C 海拾贝
专业游手好闲
这个作者很懒,什么都没留下…
展开
-
大 C 海拾贝 --- 定义变量时手工指定其地址
在GCC 和RealView MDK (即Keil) 开发工具中,允许定义变量时手工指定其地址。volatile unsigned long bbVarAry[7] __attribute__(( at(0x20003014) ));注意:at()中的地址必须对齐到4 字节边界。通过上面的方法定义变量数组的起始地址就是0x2003014。例子: 当有参数需要保...原创 2019-11-11 10:13:42 · 762 阅读 · 0 评论 -
FreeRTOS 笔记之③:数据结构-- 列表和表项(链表和节点)
目录1. C语言链表1.1 单向链表1.2双向链表1.3链表的操作1.4链表与数组的对比2. FreeRTOS中链表的实现2.1 实现链表节点2.2 实现链表根节点2.2.1 根节点数据结构2.2.2 链表根节点的初始化2.2.3 将节点插入到链表的尾部2.2.4 将节点按照升序排列插入到链表2.2.5 将节点从链表删除2.2.6 节点...原创 2019-10-17 17:32:25 · 1567 阅读 · 1 评论 -
大 C 海拾贝 -- 连接符“ ## ” 和 字符串化操作符 “ # ”
目录1. 连接符 ##2.字符串化操作符 #1. 连接符 #### 被称为连接符(concatenator),用来将两个Token 连接为一个Token。注意这里连接的对象是Token 就行,而不一定是宏的变量。在编译器编译的时候,它会扫描源码,将代码分解为一个个的Token,Token 可以是C 语言的关键字,如int、for、while 等,也可以是用户自定义的变量,如,a、n...原创 2019-08-16 10:58:53 · 654 阅读 · 0 评论 -
大 C 海拾贝 --- #ifdef __cplusplus extern "C" { #endif
目录1. extern "C"2. __cplusplus3. C++ 函数重载#ifdef __cplusplusextern "C" {#endif/* user codes */#ifdef __cplusplus}#endif使用上述定义的头文件可以在.c文件中编译,也可以在.cpp文件中编译,它是C/C++混用头文件的典型做法。1. ex...原创 2019-09-06 17:39:28 · 284 阅读 · 0 评论