语法规则

放肆的年华 提交于 2019-11-27 19:26:01

一、与if相关的

1.if(cond == true) {...}可以换成if(cond != false) {...},因为错误出现的情况更少
2.if(cond == value1) {...} if(cond == value2) {...},如果出现的情况很多,可以设置成宏,例:
#if cond == value1
.....
#endif
3.如果有多个if(condx){}并列,换成if~else形式
4.如果if~else if过多,则换成switch~case形式

二、与变量定义相关

1.对于boolean flag,不要用byte\short\int等,用一个位bit就可以
2.对const变量使用const关键字,变量会被保存在ROM中,节省RAM
3.用sizeof关键字去获取数组的大小,不要直接定义数组大小

const RxMsg_t RxMsg[] =
{
R_POWER,
C_GET_VERSION,
R_GET_VERSION,
R_REJECT
}
#define NB_ELEMENT (sizeof(RxMsg) / sizeof(RxMsg[0]));

4.各个模块不能直接使用全局变量,要通过Get或Set接口去访问

三、与运算方式相关

1.result = value / 4 改成 result = value >> 2
2.result = value * 4 改成 result = value << 2
3.result = value % 8 改成 result = value & 0x07

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!