嵌入式c语言中的坑

标题其实为了引起注意和刚刚的文章一致,其实是想说明如何写好优质的c语言

1、要注意优先级,不清楚的地方就加括号。

2、在if语句,while语句,不要过多的混合多个语句,简单明了,不要炫技巧。

3、浮点数判断要注意

4、switch中一定要加default语句,哪怕里面是空的。

5、注意for循环,切记误写成死循环

6、goto语句合理使用

7、sizeof关键字是不要有语句

8、指针的操作,统一使用p++,p--,避免+=1,-=1.

9、结构体的填充,其实涉及到内存对齐,主要是cpu读写效率问题,通常cortex系列都是4字节对齐的

10、隐式转换,这个时候就需要考虑你使用变量的范围,不能因为转换而导致数据溢出,或错误,这里可以参考c语言的经典教材,《the c programming language 2nd》,书中有提到如果进行隐式转换的。

11、位移运算,这个尽量使用无符号数来位移。有符号数位移是根据编译器来自己定义的

优先级的简表:

 

posted @ 2020-01-03 18:13  wdliming  阅读(233)  评论(0编辑  收藏  举报