C编程规范
Posted retry
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C编程规范相关的知识,希望对你有一定的参考价值。
C编程规范
一、命名
1、程序文件命名:程序文件命名要求具备模块缩写,功能描述等信息。采用每个单词首字母大写方式。
exzamp: Driver.c FontManage.c
2、函数命名
DataManageValueSet(int iValue);
3、结构体命名
typedef struct _ST_DISP_WALL_INFO
{
char szName[16];
int iRow;
int iColumn;
}ST_DISP_WALL_INFO, *PST_DISP_WALL_INFO; // “ST”或者“PST”(指针类型)作为前缀
4、联合体命名
typedef struct _UN_DISP_WALL_INFO
{
char szName[16];
int iRow;
int iColumn;
}UN_DISP_WALL_INFO, *PUN_DISP_WALL_INFO; // “UN”或者“PUN”(指针类型)作为前缀
5、变量命名:采用第一个单词首字母小写,后续首字母大写
【规则1】静态变量加前缀s_(表示static),同时要求带数据类型
【规则2】全局态变量加前缀g_(表示global),同时要求带数据类型
【规则3】所有宏定义、枚举常数和const变量全部使用大写的字母,用下划线分割单词
【规则4】变量名由单词组合而成, 具备该变量特征信息。
二、命名缩写
[重要] : https://www.cnblogs.com/huninglei/p/5497148.html
三、C++相关规范(待补充)
C++风格
class SeriPort //定义类
{
int WriteByte()
{
int iValue;
int iData;
}
}
int main()
{
SeriPort ctrUart = new SeriPort();
ctrUart->WriteByte();
}
驱动层编程风格(下划线大行其道)
文件命名: font.c key_manage.c wifi_config.h
全局变量命名: g_write_value;
局部变量命名: i_write_value、ivalue、value(不加g修饰默认都是局部)
函数定义: writee_byte();
四、注释
版权声明
//中文版权声明
/***************************************************************************
* Copyright (c) 2018, USMART, All rights reserved.
*
* 文件名称:文件名称
* 摘 要:简要描述本文件的内容
* 作 者:作者名字
*
* 修改记录:
*[日期][作者/修改者] [修改原因]
***************************************************************************/
//英文版权声明
/****************************************************************************
* Copyright (c) 2018, USMART, All rights reserved.
*
* FileName : xxx.h
* Description: xxxxxx.
* Author : xxxxxx([email protected])
* Date : 2018/09/27
* Version : 1.0
*
* Change Logs:
* 2018/09/27 xxxxxx : Create file.
****************************************************************************/
函数注释
/***************************************************************************
* Function : ModbusTcpRecvMsg
* Description: read data by ModbusTcp protocol
* Parameter :
* [Input Parameter]
* iFd @Socket file handle
* [Output Parameter]
* pucRsp @Response data from slave
* Return :
iMsgLength @the total len of Response data
* Change Logs:
* 2018/11/22 jiangfeng.zhang :add comment
* 2018/11/23 jiangfeng.zhang :corrects printf bug in 383 Line
***************************************************************************/
int ModbusTcpRecvMsg(int iDevFd,unsigned char *pucRsp)
以上是关于C编程规范的主要内容,如果未能解决你的问题,请参考以下文章