代码规范
Dr_Haven
爱学习,爱编程,爱咖啡也爱可乐;
爱挑战,爱专研,也爱玩游戏;
爱晚起,也爱工作到深夜;
擅长技术,也崇尚简单和懒惰;
神秘而孤僻,沉默而爱憎分明;
我行我素。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C语言代码规范(十)花里胡哨代码鉴赏
一、宏定义篇1、作者生怕读者不知道GPIO口只能赋值0或1。瞧不起谁呢。显得自己高人一等。uint8_t not_func(uint8_t sw){ return (sw?1:0);}#define LED1(sw) PA12=not_func(sw)原创 2021-07-22 17:28:10 · 1095 阅读 · 0 评论 -
单片机/嵌入式软件架构分层思想
以STM32裸机开发为例。软件分层应用层驱动层硬件层固件层①最底层为固件层,Firmware这一层通常是官方给的库,库函数对寄存器进行操作,例如:/** * @brief Transmits a Data through the SPIx/I2Sx peripheral. * @param SPIx: where x can be * - 1, 2 or 3 in SPI mode * - 2 or 3 in I2S mode原创 2021-03-25 10:44:18 · 5813 阅读 · 0 评论 -
C语言代码规范(九)运算符优先级使用括号提高阅读性
举简单例子a = b | c << d + 2;对于大牛没有问题,对于我这样的码农需要思考一下运算优先级对于这种情况华某有规范使用括号来表示运算顺序,从而提高代码可阅读性a = b | ( c << (d + 2) );这样一目了然,大家好才是真的好。记住大神的话:代码是写给别人看的。...原创 2019-08-28 16:28:19 · 1322 阅读 · 0 评论 -
C语言代码规范(八)使用const修饰值不允许改变的变量
使用const限定一个变量的值不允许被改变,从而保护被修饰的东西,防止意外,提高程序的可靠性和安全性。原创 2019-05-01 13:11:04 · 779 阅读 · 0 评论 -
C语言代码规范(七)#define
#define 宏定义的使用#define MAX(x, y) ( ((x) > (y)) ? (x) : (y) )#define MIN(x, y) ( ((x) < (y)) ? (x) : (y) )在宏定义中要把参数用括号扩起来( ((x) > (y)) ? (x) : (y) )。因为宏只是简单的文本替换,如果不注意,很容易引起BUG。...原创 2019-05-01 11:53:52 · 783 阅读 · 0 评论 -
C语言代码规范(六)浮点型变量逻辑比较
无论是float还是double类型的变量,都有精度限制。所以一定要避免将浮点变量用"=="或"!="与数字比较,应该设法转化成为">="或"<="形式。不建议使用的例子:if(0.0 == x)if(0.0 != x)强烈推荐的例子://EPSINON是允许的误差(精度)if(x >= -EPSINON) && (x <= EPSI...原创 2019-04-28 21:59:28 · 898 阅读 · 0 评论 -
C语言代码规范(五)函数参数个数
一个函数的参数的数目过多(尤其是超过8个)显然是一种不可取的编程风格。参数的数目直接影响调用函数的速度,参数越多,调用函数越慢。 参数的数目少,程序就显得精练、简洁,这有助于检查和发现程序中的错误。 如果一个函数的参数超过4个,就该考虑该函数是否编写得当。特别是嵌入式软件开发中,APCS规定的寄存器使用,R0~R3用来传递函数的参数。当参数个数超...原创 2019-04-18 17:17:02 · 8609 阅读 · 0 评论 -
C语言代码规范(四)命名规则
一、宏定义全部字母大写,单词间下划线间隔#define FLASH_PAGE_SIZE 256#define FLASH_SECTOR_SIZE (4 * 1024)#define FLASH_BLOCK_SIZE (64 * 1024)#define FLASH_SIZE (16 * 1024 * 1024)二、const修饰的常量全部字母大写...原创 2018-08-20 14:29:00 · 3902 阅读 · 0 评论 -
C语言代码规范(三)if语句
一、整型变量与0比较许多人为了一时之便,模仿布尔变量风格写为如下代码if(value){ ...}if(!value){ ...}应当用==或!=来与0比较if(0 == value){ ...}if(0 != value){ ...}二、当if内的语句是与常量进行比较时,常量为左值,变量为右值if(0 == v...原创 2018-08-20 13:52:04 · 2986 阅读 · 0 评论 -
C语言代码规范(二)空格
一、逗号, 之后加空格printf(" error! score[%d] = %d\n", i, score[i]);二、分号; 之后加空格for(i = 0; i < student_num; i++);三、关系运算符<、<=、>、>=、==、!= 前后加空格if((score[i] >= 0) && (s...原创 2018-08-20 13:41:04 · 11735 阅读 · 0 评论 -
C语言代码规范(一)缩进与换行
一、缩进的空格数为4个。二、“{” 和 “}”各自独占一行。 不规范例子:for(i = 0; i < student_num; i++);{ if((score[i] >= 0) && (score[i]) <= 100) total_score += score[i]; else prin...原创 2018-08-20 12:14:47 · 28695 阅读 · 1 评论
分享