0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何规范嵌入式C编码注释以及排版与格式

麦辣鸡腿堡 来源:嵌入式系统 作者:嵌入式系统 2023-12-07 14:53 次阅读

注释

◎ 注释应放在其代码上方相邻位置或右方,不可放在下面。
◎ 注释的内容要清楚明了,防止注释二义性。
◎ 修改代码时同步更新注释,保证注释与代码的一致性。
◎ 函数声明处注释描述函数功能、性能及用法,提供参考范本如下:

/**
 * @brief    函数功能
 * @params 
 * @return
 * @par history
 *   xx create  @2023-xx-xx
 */

微信公众号【嵌入式系统】提示,注释格式可以参考Doxygen标准。

◎ 全局变量要有较详细的注释
◎ 函数内部注释:函数内部不是注释越多越好,而是变量命名和逻辑清晰,自注释最好,特殊情况或者需要特别注意的地方才加注释,并且注释要放在代码行的上方。
◎ 基于SDK开发,在基线工程上改动代码,不允许删除源代码,修改代码必须增加注释,必须使用关键字“XX_CODE”标注修改原因,方便后续打补丁,范例如下:

/**** XX_CODE begin ****/
/*修改原因,作者,时间*/
< 代码块 >
/**** XX_CODE end ****/

对于非c源码的文件,在这个注释格式的基础上,每行添加对应的注释符号。
◎ 修改与外设驱动、通信协议、系统底层等相关的代码,具有特殊隐含限制的代码,必须提交详细的修改原因,便于后续版本回溯查找原因。
◎ 复杂且相对独立的功能,单独使用markdown文档说明开发方案、实现技术、应用场景、使用限制等,随代码提交。

排版与格式

◎ 程序块釆用缩进风格编写,每级缩进为4个空格。
◎ 相对独立的程序块之间、变量说明之后必须加空行。
◎ 多个短语句不允许写在同一行内,长语句不能拆分需要分行写。
◎ if、for、do、while、case、switch、default等语句独占一行,{换行且独占一行。
◎ 赋值语句不要写在if等语句中,或者作为函数的参数使用。
◎ 逻辑表达式每个子项都使用()。
◎ if与else if/else必须以’{}’分隔,且 ‘{’与‘}’各占一行,if-else分3层以上必须以else子句结束,即使操作为空,并增加注释://do nothing

if(var==xx)
{
  …
}
else if (var==yy)
{
  …
}
else if (var==zz)
{
  …
}
else
{
  //do nothing
}

◎ switch语句必须有default分支。
◎ 在两个以上的关键字、变量、常量进行对等操作时,它们之间的操作符之前、之后或者前后要加空格;进行非对等操作时(如->),后面不应加空格。
◎ 文件编写完成后,统一使用Astyle自动格式化工具整理一遍再提交到版本库。

astyle.exe --style=allman -S -U -t -n -K -p -s4 -j -q -Y -xW -xV

微信公众号【 嵌入式系统 】提示,可以参考《代码的保养》;排版格式很多,一个团队最重要的是统一风格。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5056

    文章

    18950

    浏览量

    301479
  • 编码
    +关注

    关注

    6

    文章

    922

    浏览量

    54724
  • 代码
    +关注

    关注

    30

    文章

    4708

    浏览量

    68176
收藏 人收藏

    评论

    相关推荐

    常见红外遥控器编码与格式

    常见红外遥控器编码与格式
    发表于 11-09 15:05

    嵌入式c语言编码规范

    `学习嵌入式的同学应该首先掌握嵌入式编码规范,这样才能更好的嵌入式系统。下面就从这几个方面讲解一下嵌入式
    发表于 10-31 14:50

    嵌入式c语言编码规范

    学习嵌入式的同学应该首先掌握嵌入式编码规范,这样才能更好的嵌入式系统。下面就从这几个方面讲解一下嵌入式
    发表于 11-07 15:17

    嵌入式Linux C代码规范

    本文档为作者 在嵌入式嵌入式 linux C语言的学习和工作中所总结的代码规范 ,是作者从 STM32单片机开发向 Linux C开发的时
    发表于 01-14 10:25

    嵌入式开发putty串口打印乱码编码格式问题

    目录嵌入式开发putty串口打印乱码编码格式问题波特率设置错误嵌入式开发putty串口打印乱码在使用putty连接串口打印的时候,发现打印乱码。问题原因可能有两个,一个是
    发表于 11-05 09:10

    LOOP指令功能与格式总结

    因为嵌入式系统学习需要,开始学习汇编语言学习资料是B站的视频:汇编语言程序设计 贺利坚主讲 (P25)这里写目录标题LOOP功能与格式一、LOOP指令实例二、LOOP指令执行的要求三、用LOOP指令
    发表于 01-17 06:26

    嵌入式C的主要特点以及嵌入式C与标准C异同冲区重用

    嵌入式C发展迅速, 而且成为最受欢迎的语言之一, 主要因为它具有强大的功能。用嵌入式C加上一些汇编语言子程序, 就更能显示嵌入式
    发表于 05-29 14:24 3748次阅读

    嵌入式C语言教程以及C编程要素

    前记住要保存并关闭文件;  16、出错情况的处理;  17、写上必要的注释。  以上是小编给同学们讲的嵌入式C语言教程以及C编程要素,同学们
    发表于 09-05 10:59 490次阅读

    嵌入式系统的规范发展回顾

    后PC时代,嵌入式系统的发展风起云涌,波澜壮阔。在这一历史洪流中,众多的嵌入式系统规范争奇斗艳,各种嵌入式板卡令人眼花缭乱。伴随着极大量标准软硬件产品的支持,
    发表于 02-14 14:00 1617次阅读

    嵌入式代码之编写规范

    嵌入式代码编码规范,用于规范自己的代码,增强可读性,非标准规范。最好能强制自己形成良好的编码风格
    的头像 发表于 04-26 15:21 5216次阅读

    嵌入式log打印格式输出技巧

    嵌入式log打印格式输出技巧Log 信息格式条件编译可变参数宏C标准中一些预定义的宏格式输出16进制数组Log 信息
    发表于 10-20 21:06 5次下载
    <b class='flag-5'>嵌入式</b>log打印<b class='flag-5'>格式</b>输出技巧

    嵌入式软件之c语言编码规范

    嵌入式软件之c语言编码规范
    发表于 10-28 18:13 28次下载

    嵌入式代码的排版问题

    对于代码的规范性不管是做纯软件开发的还是做嵌入式开发的或者使用各种语言的,都是非常重要的。代码的规范性对编写人员对代码后期的维护以及其他开发人员阅读等都是非常友好的。接下来我们会对代码
    的头像 发表于 04-15 15:01 961次阅读

    嵌入式C语言编码如何注释?在哪儿注释

    看一份源码什么很重要?除了各种代码规范之外,还有一个比较重要的就是注释
    的头像 发表于 08-14 18:25 1210次阅读
    <b class='flag-5'>嵌入式</b><b class='flag-5'>C</b>语言<b class='flag-5'>编码</b>如何<b class='flag-5'>注释</b>?在哪儿<b class='flag-5'>注释</b>?

    嵌入式C编码文件头申明规范

    编码规范 2.1 文件头申明 ◎ 新增.c必须添加注释,标注公司名称、文件功能说明,创建日期、作者,后续修改说明 范例
    的头像 发表于 12-07 14:29 381次阅读