嵌入式c语言
NULL_1969
嵌入式编程爱好者
展开
-
__attribute__((packed))详解
1. __attribute__ ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐,是GCC特有的语法。这个功能是跟操作系统没关系,跟编译器有关,gcc编译器不是紧凑模式的,我在windows下,用vc的编译器也不是紧凑的,用tc的编译器就是紧凑的。例如: 在TC下:struct my{ char ch; int a;} sizeof(in转载 2016-11-11 22:00:04 · 335 阅读 · 0 评论 -
sizeof 与数组
今天发现了一个小问题,函数形参定义为指针,然后传入了一个数组,在函数内部用sizeof得到数组的长度,发现一直是4不变,具体代码简化如下:void test1(uint8_t *buf) { printf("buflen:%d\n",sizeof(buf)); }uint8_t buf[10]=[1,2,3,4,5,6,7,8];int main() { test1(buf); }结果为原创 2016-11-01 20:51:13 · 601 阅读 · 0 评论 -
函数指针使用(转)
第一个例子说明指向函数的指针如何说明、赋值、调用。 #include #define TESTDATE 100 int func(int a) /* func用于打印一个整数 */ { return printf("%d\n",a); } main() { int (*FunctionPionter)(int a); FunctionPionter = fu转载 2017-01-11 15:39:33 · 271 阅读 · 0 评论 -
FreeRTOS学习
事件组 configUSE_16_BIT_TICKS为1时可以存储8个时间位,为0时可以存储24个事件组 动态与静态创建时间标志组 EventGroupHandle_t xEventGroupCreate(void) EventGroupHandle_t xEventGroupCreateStatic(StaticEventGroup_t *pxEventGroupBuffer) 清除事件...原创 2018-03-07 19:43:44 · 295 阅读 · 0 评论