c语言学习(7,8,9,10,11)-编码规范与实践

一. 引言

  1. 保持代码简洁可读

二. 代码风格

(一)命名

  1. 符合阅读习惯
  2. 作用域越大,命名越精确
  3. 不使用匈牙利命令风格,使用驼峰风格
    在这里插入图片描述

(二)注释

  1. 全面,不冗余(以阅读者的角度看)
  2. 不要复制粘贴写注释

(三)格式

  1. 行宽与可读性
  2. 换行:合适地方换行(可读),同类对齐或层类缩进

四. 编程实践

(1)预处理

(2)头文件

  • 公开声明一套接口
  • 避免万能头文件(放冗余的文件)

(3)数据类型

(4)常量

(5)变量

  • 不使用未初始化变量
  • 不在子域总使用相同命名
  • 资源及时释放

(6)表达式

  • 操作数有相同的基本类型
  • 算式中不使用自增自减

(7)控制语句

  • 判断结果为布尔
  • 循环需要安全退出

(8)声明和初始化

  • 不要声明标识符

(9)整数

  • 注意:整数溢出,回绕,转换时截断,错误位移,除0

(10)指针和数组

  • sizeof 的使用
  • 不同类型指针的强制转换

(11)字符串

  • 以’\0’结尾
  • 注意缓存区溢出

(12)断言

  • 一个错误使用一个
  • 不在系统中使用assert()

(13)函数设计

在这里插入图片描述

  • 外部传入后需要校验(传入另外一个模块也需要)

(14)函数使用

  • 处理返回值

(15)格式化输入/输出

  • 注意:参数类型,参数数目,长度,用户输入

(16)内存分配函数

  • 禁用realloc()与alloca()

(17)安全函数

  • 使用公司认证的安全函数,不要去重命名

(18)文件函数

(19)其他函数

  • 注意system()函数
  • 多线程下使用线程安全函数
  • 信号处理中,保证函数异步安全

五. 其他

  1. 删除无效代码
  2. 不使用rand()函数
  3. 清理敏感信息
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值