yichi的c代码书写规范

本文详细介绍了一套用于C语言编程的规范标准,包括常量、变量、函数命名规则及注释等,有助于提升代码的可读性和维护性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//yichi的c代码编写规范:091216
//一、常量:
//  所有宏定义、枚举常数和const变量全部由大写字母构成,词与词之间用下划线分开,例如#define GPS_WORK_STATUS 0x30
//二、变量:
//  局部变量全部由小写字母构成,词与词之间用下划线分开,例如uint8 ack_delay_time[4];全局变量与局部变量类似,但每个单词的首字母大写,第一个单词的首字母不必大写,例如uint8 Ack_Delay_Time[4];
//  具有特殊意义的词头(只是为了使变量意义更加明确,不强制使用):
//  1、b_ :表示变量为位变量(只有0、1两种状态),例如:b_receive_end。
//  2、g_ :表示变量为全局变量,例如:g_GPS_Data_Len。
//  3、tmp_:表示变量为临时变量,例如:tmp_trans_data。
//  4、其他表示类型的词头:c char;l long;i integer;u unsigned;b boolean;p pointer;f float;lp long pointer;d double;s string;st structure;sz ASCII string;by byte;n short int。
//  5、其他表示含义的词头:x,y position;fn function;task task;sig signal;wd watchdog;msg message;pipe pipe。
//三、函数名:
//  函数名中不使用下划线,以首字母大写区分每个单词,第一个单词的首字母不必大写,例如void uart0TxBytes(uint8* bytes, int32 cnt);
//四、函数体格式:
//  书写函数时,函数名顶格写,表示函数界限的花括号另起一行顶格写,函数体内容缩进一个TAB(4个空格)。
//  switch语句花括号另起一行,语句内容缩进一个TAB(4个空格)。
//  if,for,while等语句后跟随大括号不另起一行,用空格隔开,语句内容缩进一个TAB(4个空格)。例如:
//  int main(int argc, char* argv[])
//  {
//      int delay_time = 0;
//      if(delay_time == 0) {
//          delay_time = 100;
//      }
//  }
//五、运算符前后书写空格问题:
//  1、单目运算符:与变量之间不加空格,例如 !b_empty,i++。
//  2、算术运算符:与变量之间不加空格,例如 (3+4)*5-1,i+10。
//  3、赋值运算符与比较运算符:两侧都加空格:例如 tmp_trans_data < 2,len_data += 10。
//  4、,;:等分隔符:在分隔符后加空格,例如 ackToPlayer(0xCC, 0, 0)。
//  5、()[]""''等分隔符:前后不加空格,例如 rx0_buf[SIZE_RX0_BUF+4],"hello world!/n"。
//六、注释:
//  1、文件注释:通常置于每个程序文件的开头部分,它给出该程序文件的相关信息。格式如下:
//  //*****************************************************************************
//  **
//  ** File Name : 'timer.c' 文件名称
//  ** Title  : Timer Support Library for LPC2100 标题
//  ** Author  : yichi - Copyright (C) 2009 作者
//  ** Created  : 2009.12.05 文件创建时间
//  ** Revised  : 2009.12.12 文件最后修改时间
//  ** Version  : 0.1 版本号
//  ** Target MCU : ARM processors 目标处理器
//  **
//  ** NOTE: This code is currently below version 1.0, and therefore is considered 声明
//  ** to be lacking in some functionality or documentation, or may not be fully
//  ** tested.  Nonetheless, you can expect most functions to work.
//  **
//  ** This code is distributed under the GNU Public License
//  **  which can be found at http://www.gnu.org/licenses/gpl.txt
//  **
//  *******************************************************************************/
//  2、函数注释:通常置于每个函数的开头部分,它应当给出函数的整体说明对于理解程序本身具有引导作用。格式如下:
//  /********************************************************************************************************
//  ** Function name:   IRQ_Exception 函数名
//  ** Descriptions:   interrupt exceptional handler , change it as needed 功能描述
//  **
//  ** input parameters:  None 输入参数
//  ** Returned value:   None 返回值
//  ** Used global variables: None 使用的全局变量
//  **
//  ** Arithmetic:    None 使用的复杂算法
//  **
//  ** Created Date:   2009/12/16 创建时间
//  ** -----------------------------------------------------------------------------------------------------
//  ** Modified by:    yichi 修改人
//  ** Modified date:   2009/12/17 修改时间
//  ** -----------------------------------------------------------------------------------------------------
//  ********************************************************************************************************/
//  3、语句注释:长期注释必须使用//而不能使用/* */,调试时使用的/* */应尽快删除或改为//注释。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值