名字

  • 变量名
    • 全小写字母
    • 局部变量应简短,不使用下划线
    • 全局变量使用下划线分割,具有描述性
    • 指针变量加后缀字母p表示指针,如nodep,无歧义时可直接用ppp,如同循环变量经常使用ijk一样
  • 函数名
    • 全小写字母,下划线分割
    • 同一个模块的函数加上统一的前缀,如stack_push()tree_insert()
  • 类型名
    • 自定义类型名首字母大写,单词之间用大写字母分割,如ListElemType
  • 宏、常量、枚举
    • 宏名全大写,下划线分割,如MAX_LINEMIN(x,y)
    • 常量名全大写,但是加上前缀字母k,如const int kNUM_USER = 5;
    • 枚举常量名全大写,不用下划线,如enum { NEWLINE='\n', ... };

指针

  • 遍历单链表
for (ListNode *p = head; p; p = p->next)
	...