程序员代码风格 之别人见,我的理解

高质量代码编写指南
本文分享了高质量代码编写的经验,强调了代码清晰度的重要性,并提出了函数单一原则、合理的代码结构、参数有效性验证等实用建议。

  写代码的时候,你永远不知道下次有谁会读你的代码。

  你发表了一遍博客,你认为没人看,随便一写,或者你只是给自己看,不知那一天,一个焦急的爬虫,翻阅无数的网页,来到你的网页,不出意外,不到5s中,你糟糕的排版以及代码风格,让他以为在浪费时间 ,以至于真正对他有用的,就此错过,所以你们之间错过了什么。咳咳,我好像话痨了。

  写代码也一样,不要有自私的心里,这个函数只是我用,不规范也ok,当别人真需要的时候,很有可能会重新定义一个新函数,代码功能类似,却比你的更安全。

  究竟该怎么写代码,为啥别人宁愿自己重新写,也不愿用你的代码。

  我总结几条,希望对你有用,对我则是记忆备份。

  函数遵循单一原则,一个函数一个功能,不需要多功能的***,就是流水线的操作工,只干一件事。库函数中有一个realloc函数,这个函数就很糟糕。  函数原型如下void *realloc( void *memblock, size_t size ); 1这个函数可以扩展申请空间用memblock 是通过calloc, malloc, or realloc.申请的,size指定新的大小。这种使用的时候,要先保存memblock的地址,万一扩容失败,也可以通过保持的memblock释放空间,避免内存释放。2当申请空间用,制定memblock 为NULL , 指定申请空间的大小。相当于malloc(size) 3,释放内存,指定size 为0 ,相当于free(memblock). 不推荐使用。

  函数内三层结构是可以接受的。过多层的结构需要转换,重新调整代码结构。

  推荐使用单出口,就是程序只有一个入口和出口。而不是各种return 。

  程序入口处应该先校验参数值是否有效,需要校验的参数一般有传入的指针,数组的大小,申请空间的大小,内核对象(进程句柄,句柄)进程pid 等。

  应校验函数返回值,强烈推荐。

  函数逻辑结构复杂的推荐用do{}while(FALSE)结构,若需要申请空间的变量,应该定义到do{}while外面,里面根据逻辑,不符合条件的都跳出去,里面和外面应该成对处理。可添加注释方便理解

  我觉得变量定义应什么时候用,什么时候定义,除非要申请空间的,为了方便处理,可统一安排在函数头。

  函数名和变量名参数应根据使用的功能命名,命名规范可参考微软的,最好能见名知义。

  少用全局变量和extern.

  在啰嗦下,c语言封装。c语言是依靠.c文件为单元的,函数作用域在这个单元内,将需要的头文件都包含在这个.c文件里,把需要公用的函数,变量在.h文件中申明,一般.c文件中,先保护头文件,接着宏定义 ,#pragma XXX,接着就是全局变量定义,结构体定义,然后定义主函数,主要中需要的其他函数定义卸载这个主函数之前,若全局变量中包含本.c文件定义的函数指针,则,在全局变量前,宏定义之后声明这个函数指针

  大概就这些吧,不早了,哈~

  等我想到其他再补充

 

转载于:https://www.cnblogs.com/haovcf/p/6741577.html

乐播投屏是一款简单好用、功能强大的专业投屏软件,支持手机投屏电视、手机投电脑、电脑投电视等多种投屏方式。 多端兼容与跨网投屏:支持手机、平板、电脑等多种设备之间的自由组合投屏,且无需连接 WiFi,通过跨屏技术打破网络限制,扫一扫即可投屏。 广泛的应用支持:支持 10000+APP 投屏,包括综合视频、网盘与浏览器、美韩剧、斗鱼、虎牙等直播平台,还能将央视、湖南卫视等各大卫视的直播内容一键投屏。 高清流畅投屏体验:腾讯独家智能音画调校技术,支持 4K 高清画质、240Hz 超高帧率,低延迟不卡顿,能为用户提供更高清、流畅的视觉享受。 会议办公功能强大:拥有全球唯一的 “超级投屏空间”,扫码即投,无需安装。支持多人共享投屏、远程协作批注,PPT、Excel、视频等文件都能流畅展示,还具备企业级安全加密,保障会议资料不泄露。 多人互动功能:支持多人投屏,邀请好友加入投屏互动,远程也可加入。同时具备一屏多显、语音互动功能,支持多人连麦,实时语音交流。 文件支持全面:支持 PPT、PDF、Word、Excel 等办公文件,以及视频、图片等多种类型文件的投屏,还支持网盘直投,无需下载和转格式。 特色功能丰富:投屏时可同步录制投屏画面,部分版本还支持通过触控屏或电视端外接鼠标反控电脑,以及在投屏过程中用画笔实时标注等功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值