C算法&面试题C语言

比较完美的C语言编码风格!

2020-05-11  本文已影响0人  逐风墨客
C语言编码风格.png

  每个人心中都有一套自己编码风格,好的编码风格能让人一看就懂写的啥东西,有啥意义,也方便维护程序。如果是初学者,变量命名,最好采用匈牙利风格,能迅速知道这个变量的类型。
  以下,我打算使用的变量命名风格:

数据类型            前缀      后缀      举例

void                v                   void *p_vVarName    
bool                b                   bool bVarName

char                c                   char cVarName   
unsigned char       uc                  unsigned char ucVarName 

short               s                   short sVarName  
unsigned short      us                  unsigned short usVarName
int                 i                   int iVarName
unsigned [int]      ui                  unsigned int uiVarName
long                l                   long lVarName
unsigned long       ul                  unsigned long ulVarName
long long           ll                  long long   llVarName
unsigned long long  ull                 unsigned long long  ullVarName

float               f                   float fVarName  
double              d                   double dVarName 
long double         ld                  long double ldVarName

register            reg_                register int reg_iVarName               
const               cst_                const int cst_iVarName
volatile            vlt_                volatile int vlt_iVarName
static              s_                  static int s_iVarName
extern              g_                  extern int g_iVarName


数组                           _a       int iVarName_a[MAX]
指针                p_                  int *p_iVarName

struct              st或pst             struct PERSON stPERSON 或 struct PERSON *pstPERSON
union               un或pun             union HOUSE unHOUSE 或 union HOUSE *punHOUSE
enum                em或pem             enum WEEK emWEEK 或 enum WEEK *pemWEEK

  C语言编码常见单词缩写:

编号 英文 缩写 中文
01 addition add 添加
02 answer ans 回答
03 argument arg 参数
04 array arr 数组
05 average avg 平均数
06 buffer buf 缓冲区
07 capture cap 捕捉
08 check chk 检查
09 clock clk 时钟
10 column col
11 command cmd 命令
12 compare cmp 比较
13 configuration cfg 配置
14 control ctl 控制
15 count cnt 计数
16 data dat 数据
17 decode dec 解码
18 encode enc 编码
19 define def 定义
20 delete del 删除
21 destination dest 目标
22 display disp 显示
23 division div 除法
24 environment env 环境
25 error err 错误
26 float flt 浮点
27 frequency freq 频率
28 header hdr 数据头
29 index idx 索引
30 image img 图片
31 increment inc 自增
32 initalize init 初始化
33 iteration itr 重复
34 length len 长度
35 memory mem 内存
36 middle mid 中间的
37 make mk 制造
38 message msg 消息
39 multiplication mul 乘法
40 number num 数字
41 operand opnd 操作数
42 operator optr 运算符
43 optimization opt 优化
44 packet pkt 数据包
45 payload type pt 有效负载
46 pointer ptr 指针
47 positon pos 坐标
48 previous prev 先前的
49 receive recv 接收
50 record rcd 记录
51 register reg 寄存器
52 result res 结果
53 return ret 返回
54 source src 来源
55 stack stk 堆栈
56 string str 字符串
57 subtraction sub 减法
58 synchronize sync 同步
59 table tab 表格
60 temporary tmp 临时
61 time stamp ts 时间戳
62 total tot 合计
63 value val

  其它注意事项:

  1. 常用循环变量i,j,k就不用变量前缀来修饰了,别的字符循环变量名尽量不要使用。
  2. 所有宏定义,全用大写字母命名,用下划线分割单词。(例:#define FILE_PATH /usr/tmp
  3. C语言毕竟是面向过程的编程,C语言函数定义尽量全部使用小写字母,用下划线分割单词,以区别面向对象的编程。(例:void set_name(void) 或 char *get_name(char *name)
  4. 使用==此运算符时,把常量写在左边。(例:if (0 == iVal)
  5. if、for、while 等关键字之后应留一个空格再跟左括号,以突出关键字。
  6. 函数名之后不要留空格,紧跟左括号,以与关键字区别。
  7. 左括号向后紧跟, 右括号、逗号 、分号 ;向前紧跟,紧跟处不留空格。
  8. 逗号之后要留空格,如Function(x, y, z)。如果分号;不是一行的结束
    符号,其后要留空格,如 for (initialization; condition; update)
  9. 赋值操作符、比较操作符、算术操作符、逻辑操作符、位域操作符,
    如“=” 、 “+=” “>=” 、 “<=” 、 “+” 、 “*” 、 “%” 、 “&&” 、 “||” 、 “<<”、“^”等二元操作符的前后应当加空格。
  10. 一元操作符如“!” 、 “~” 、 “++” 、 “--” 、 “&” (地址运算符)等前后不加空格。
  11. 像“[]” 、 “.” 、 “->”这类操作符前后不加空格。
  12. 对于表达式比较长的 for语句和if 语句,为了紧凑起见可以适当地去
    掉一些空格,如for (i=0; i<10; i++)if ((a<=b) && (c<=d))
上一篇 下一篇

猜你喜欢

热点阅读