首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C语言编程规范

2018 /10 图片来源于网络 C语言入门到精通 公众号 闫小林 C是一门朴素语言,它是大部分程序员入门语言,那么C语言常见编程规范都有哪些呢 1 头文件: 1.头文件中适合放置接口声明....c提供接口,禁止在.c中通过extern方式使用外部函数接口、变量 10.如果一个模块包含多个子模块,则建议每一个子模块提供一个对外.h,文件名为子模块名,降低接口使用者编写难度 2 编码...C语言入门到精通 4 禁止内存泄漏: 1.异常出口处检查内存、定时器/文件句柄/Socket/队列/信号量/GUI等资源是否全部释放 2.删除结构指针时,必须从底层向上层顺序删除 3.使用指针数组时...: 1.内存释放后,把指针置为NULL;使用内存指针前进行非空判断 2.耦合度较强模块互相调用时,一定要仔细考虑其调用关系,防止已经删除对象被再次使用 3.避免操作已发送消息内存 4.自动存储对象地址不应赋值给其他在第一个对象已经停止存在后仍然保持对象...(具有更大作用域对象或者静态对象或者从一个函数返回对象) END

32.7K3129

常见C语言编程规范

头文件: 1.头文件中适合放置接口声明,不适合放置实现。 2.头文件应向稳定方向包含,产品依赖于平台,平台依赖于标准库。 3. .c/.h文件禁止包含用不到头文件。...9.只能通过包含头文件方式使用其他.c提供接口,禁止在.c中通过extern方式使用外部函数接口、变量。...6.函数调用不要作为另一个函数参数使用,否则对于代码调试、阅读都不利。 7.函数break,return时一定要注意资源释放,比如释放申请内存、释放锁。 8.禁止内存操作越界。...(2)耦合度较强模块互相调用时,一定要仔细考虑其调用关系,防止已经删除对象被再次使用。 (3)避免操作已发送消息内存。...(4)自动存储对象地址不应赋值给其他在第一个对象已经停止存在后仍然保持对象(具有更大作用域对象或者静态对象或者从一个函数返回对象)。

2.3K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    C语言编程规范 clean code

    参考该规范之前,希望您具有相应C语言基础能力,而不是通过该文档来学习C语言。...了解C语言ISO标准; 熟知C语言基本语言特性; 了解C语言标准库; 总体原则 代码需要在保证功能正确前提下,满足可读、可维护、安全、可靠、可测试、高效、可移植特征要求。...本章从编程规范角度总结了一些方法,可用于帮助合理规划头文件。 头文件职责 头文件是模块或文件对外接口。 头文件中适合放置接口声明,不适合放置实现(内联函数除外)。 头文件应当职责单一。...extern "C" 通常出现在 C,C++ 混合编程情况下,在 extern "C" 中包含头文件,可能会导致被包含头文件原有意图遭到破坏,比如链接规范被不正确地更改。...goto语句通常用来实现函数单点返回。

    5.5K10

    C语言编程规范 clean code

    参考该规范之前,希望您具有相应C语言基础能力,而不是通过该文档来学习C语言。...了解C语言ISO标准; 熟知C语言基本语言特性; 了解C语言标准库; 总体原则 代码需要在保证功能正确前提下,满足可读、可维护、安全、可靠、可测试、高效、可移植特征要求。...本章从编程规范角度总结了一些方法,可用于帮助合理规划头文件。 头文件职责 头文件是模块或文件对外接口。 头文件中适合放置接口声明,不适合放置实现(内联函数除外)。 头文件应当职责单一。...extern "C" 通常出现在 C,C++ 混合编程情况下,在 extern "C" 中包含头文件,可能会导致被包含头文件原有意图遭到破坏,比如链接规范被不正确地更改。...goto语句通常用来实现函数单点返回。

    4.4K10

    这才是理想中 C 语言编程规范

    今天找了一篇编码规范分享大家,可以规避掉很多bug~ “简 介: 本文分析在头条上分享GitHub上一位老外嵌入式C编码规范(收藏细读):嵌入式大杂烩。...关键词: 嵌入式,C语句,编程规范” 分享GitHub上一位老外嵌入式C编码规范(收藏细读)[1] 01 最重要规则 编写代码时最重要一条规则是:检查周围代码并尝试模仿它。   ...这是为C语言本身保留 对于严格模块私有函数,使用prv_ name前缀 对于包含下划线_ char变量/函数/宏/类型,只能使用小写字母 左花括号总是与关键字(for, while, do, switch...; while (is_register_bit_set()) { } while (is_register_bit_set()) { } 如果while(或for、do-while等)为空(嵌入式编程中也可能是这种情况...C编码规范(收藏细读):https://www.toutiao.com/i6949933402917306893/?

    2.4K20

    Python语言编程规范与优化建议

    代码任何一种语言都有一些约定俗成编码规范,Python也不例外。Python非常重视代码可读性,对代码布局和排版有更加严格要求。...这里重点介绍Python社区对代码编写一些共同要求、规范和一些常用代码优化建议,最好在开始编写第一段代码时候就要遵循这些规范和建议。 (1)严格使用缩进来体现代码逻辑从属关系。...(6)对关键代码进行必要注释。统计数据表明,一个可读性较好程序中应包含大概30%以上注释。在Python中有两种常用注释形式:#和三引号。...某行代码中“#”之后内容将被看做是注释而不执行,三引号则常用于大段说明性文本注释。 (7)在开发速度和运行速度之间尽量取得最佳平衡。...可以使用pip install -U pep8来安装pep8工具,然后使用pep8 test.py来测试test.py文件中Python代码规范性,pep8常用可选参数有--show-source、

    1.3K40

    常用几种编程语言讲解

    我们来看一下编程语言排行榜 我们可以看到前五分别是Java,C,C++,C#,Python,我们就先讲一下这五种语言吧,让大家快速入门。...1.Java是一门面向对象编程语言,Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等,java有JavaSE\JavaEE\JavaME。...2.C是学习高级语言基础;C++主要用于编写大型软件核心代码和汇编一样,比较难学,不过学好了后,很有前途;C#主要用于编写一些系统软件,比如游戏引擎核心代码,编写比较简单,界面比较友好;ASP.NET...3.Python 是一种面向对象、解释型计算机程序设计语言,一般使用python快速生成程序原型(有时甚至是程序最终界面),然后对其中有特别要求部分,用更合适语言改写。...语言有免费、开源、可嵌入性、解释性特点,能进行系统编程 、图像处理、数据库编程、网络编程。 有更多想要了解请关注我,若有关于这篇文章有不同意见可以在下方留言。

    1.5K100

    编程规范

    领域层–编码规范 2018年4月4日14:10:38 Controller层编写规范 controller层只是负责从service层获得数据,对外暴露API接口,核心业务逻辑在service层。...@PathVariable 此注解意味着一个方法参数应该绑定到一个url模板变量[在’{}’里一个]中 Service编写规范 service必须基于接口编程 接口类:位于xxx.xxx.service...map) throws Exception { return userMapper.queryUserList(map); } } Model层编写规范...对象关系映射(ORM)概念产物,基本上对象成员变量对应了数据库中一行记录各字段映射,方便实现ORM持久层框架如(Mybatis)在读取数据时候将数据库一行记录快速转换为对象供业务层使用。...VO层编写规范 VO是值对象,业务对象,存活在业务层,是业务逻辑使用,它存活目的就是为数据提供一个生存地方。

    82960

    【入门必备】常用C语言编程工具

    学习C语言也是一样,对于初学者来说往往选择一款好编程工具是很头大事情。下面小编就给大家点评几款常用C语言编程工具,究竟那款适合你,由你自己决定。 VC++ 6.0 ?...这款软件相信大家看到名字就觉得很亲切,也是大家吐槽最多。中国大学计算机专业学习C语言必备神器,也算是比较古老C语言学习工具了。...又一款不错C语言学习编程工具。它是一个Windows环境下C/C++集成开发环境(IDE),它是一款自由软件,遵守GPL许可协议分发源代码。...开发环境包括多页面窗口、工程编辑器以及调试器等,在工程编辑器中集合了编辑器、编译器、连接程序和执行程序,提供高亮度语法显示,以减少编辑错误,还有完善调试功能,适合初学者与编程高手不同需求,是学习C...GCC 原名为 GNU C 语言编译器(GNU C Compiler),因为它原本只能处理 C语言。GCC很快地扩展,变得可处理 C++。后来又扩展能够支持更多编程语言

    2.5K50

    你最常用那种编程语言

    随着技术进步,科技发展,出现了越来越多编程语言,那么作为一个嵌入式攻城狮来说,会几种才能够适应呢,其实没有标准答案,像最早我们学习汇编语言,后来做嵌入式产品大都用C, C++,但是我们做一些上位机软件又会用到...VSVB,VC,#C等,有时候还要用到一些脚本语言,python,perl,甚至有时候做一些嵌入式项目里跑web server时候,还需要会修改网页文件,等等,还有java等等 ?...所以说只会一种编程语言,已经明显不能够适应现在开发工作,至少掌握两到三种语言,才能够适应目前飞速发展和高要求产品开发工作,做一个被点赞攻城狮。...今天我们就来调查下,让大家看看你同行们都会什么语言,都做什么开发, 同时也希望大家在留言里多多发表个人观点,交流下你们体验和体会。

    94560

    【Unity】编程规范

    参考文章:https://zhuanlan.zhihu.com/p/376111503 目录 一、变量名称 一、变量名称 命名规范:一个游戏开发周期往往是漫长,为了保证我们回来能看懂我们写代码...,变量命名需要有他意义。...否则你代码将会杂乱无章,最终弃稿。 【命名规则】 Pascal 规则: 每个单词开头字母大写(如 TestCounter). Camel 规则: 除了第一个单词外其他单词开头字母大写....有时候需要提供以字母 I 开始类名称,虽然该类不是接口。只要 I 是作为类名称组成部分整个单词第一个字母,这便是适当。例如,类名称 IdentityStore 就是适当。...在适当地方,使用复合单词命名派生类。派生类名称第二个部分应当是基类名称。

    61620

    Python编程规范

    1,Python编程规范 > 编码 所有的 Python 脚本文件都应在文件头标上 # -*- coding:utf-8 -*- 用于设置编辑器,默认保存为 utf-8 格式。...; 3) 在函数中逻辑段落间加空行,即把相关代码紧凑写在一起,作为一个逻辑段落,段落间以空行分隔; > 断行 尽管现在宽屏显示器已经可以单屏显示超过 256 列字符,但本规范仍然坚持行最大长度不得超过...不过要注意, 通常用隐式行连接更清晰,因为多行字符串与程序其他部分缩进方式不一致。 >命名 一致命名可以给开发人员减少许多麻烦,而恰如其分命名则可以大幅提高代码可读性,降低维护成本。...>> 包 包命名规范与模块相同 >> 缩写 命名应当尽量使用全拼写单词,缩写情况有如下两种: 1) 常用缩写,如 XML、ID等,在命名时也应只大写首字母,如 class XmlParser...# 另一个行注释 fn = callback_function # 还是行注释 没有必要做这种对齐,原因有两点:一是这种对齐会打乱编程注意力,大脑要同时处理两件事(编程和对齐

    85430

    Android编程规范

    控件变量命名,控件ID命名: 建议:xml布局文件中控件id命名与*.java代码文件中控件对象命名一致。...常用控件以及类对象命名规范说明(红色部分为建议前缀或者后缀): 类名 变量名 类名 变量名 TextView txtDescription ProgressBar progressDescription...在Activity之间传递参数时候,intent.putExtra key值也要命名规范,并且统一定义为静态常量,不能直接硬编码在代码中,否则想要修改时候很麻烦。...JSON解析: Android中调用服务端接口一般返回是json数据,在解析json时候,无论是使用原始手工解析方式,还是使用javabean解 析方式,解析出来结果在使用时候必须都进行判空处理...,符号常量值是由大写英文单词组成,是有意义,可以帮助程序员更好理解函数返回值意义,而且符号常量值对应具体赋值在后期是很方便修改

    1.2K70

    大数据开发常用编程语言有哪些

    大数据开发常用编程语言有哪些 1.Python语言 如果你数据科学家不使用R,他们可能就会彻底了解Python。...如果你有一个需要NLP处理项目,就会面临数量多得让人眼花缭乱选择,包括经典NTLK、使用GenSim主题建模,或者超快、准确spaCy。...这一直是Python杀手级功能之一 2、R语言 使用R语言,只需要短短几行代码,你就可以在复杂数据集中筛选,通过先进建模函数处理数据,以及创建平整图形来代表数字。...它被比喻为是Excel一个极度活跃版本。R语言最伟大资本是已围绕它开发充满活力生态系统:R语言社区总是在不断地添加新软件包和功能到它已经相当丰富功能集中。...据估计,超过200万的人使用R语言,并且最近一次投票表明,R语言是迄今为止在科学数据中最流行语言,被61%受访者使用(其次是Python,39%) 3、JAVA Java,以及基于Java框架

    1.3K10

    MySQL编程规范

    ⽚、文件等大数据 禁止在线上做数据库压力测试 禁⽌从测试、开发环境直连线上数据库 命名规范 库名、表名、字段名禁⽌止超过32个字符。...开发设计规范 禁⽌使用分区表。 拆分大字段和访问频率低字段,分离冷热数据。 用Hash进⾏散表,表名后缀使⽤⼗进制数,下标从0开始。...每行记录物理长度不超过8KB 索引规范 索引数量要控制: 单张表中索引数量不超过5个 单个索引中字段数不超过5个 对字符串使⽤用前缀索引,前缀索引长度不超过8个字符 建议优先考虑前缀索引,超过20个长度字符串列...uni_userId_userName_userEmail SQL规范 SQL语句尽可能简单,大SQL想办法拆成小SQL语句(充分利用QUERY CACHE和充分利用多核CPU) 事务要简单...拆分大‘delete’和‘insert’语句。 流程规范 所有新建表要估算最大数据量、最高并发访问量,并告知DBA。 所有的建表操作需要提前告知DBA该表涉及查询SQL,以及预估高并发SQL。

    1.5K10

    python编程规范

    编写规范 每个import 语句只导入一个模块,尽量避免一次导入多个模块。 不要在行尾添加分号“;”,也不要用分号将两条命令放在同一行。...这是因为字符串是不可变,这样做会创建不必要临时对象。推荐做法是将每个子字符串加入列表,然后在循环结束后使用join()方法连接列表。...适当使用异常处理结构提高程序容错性,但不能过多依赖异常处理结构,适当显式判断还是必要。 命名规范 模块名尽量短小,并且使用全部小写字母,可以使用下划线分隔多个字母。...包名尽量短小,并且使用全部小写字母,不推荐使用下划线。 类名采用单词首字母大写形式。 模块内部类采用下划线+Pascal风格类名组成。...使用下划线开头模块变量或者函数是受保护,在使用import *from语句从模块中导入时这些变量或者函数不能被导入。 使用下划线开头实例变量或方法是类私有的。

    69900

    单片机开发之C语言编程基本规范

    为了提高源程序质量和可维护性,从而最终提高软件产品生产力,特编写此规范。本标准规定了程序设计人员进行程序设计时必须遵循规范。...本规范主要针对单片机编程语言和08编译器而言,包括排版、注释、命名、变量使用、代码可测性、程序效率、质量保证等内容。...1.基本规则 格式清晰、注释简明扼要、命名规范易懂、函数模块化、程序易读易维护、功能准确实现、代码空间效率和时间效率高、适度可扩展性、单片机编程规范-标识符命名 2.标识符命名 2.1 命名基本原则...单片机编程规范-排版 5.1 缩进 代码每一级均往右缩进4个空格位置。不使用Tab键 5.2 分行 每行语句(?????...3) typedef和#define用法 ① typedef用法 在C/C++语言中,typedef常用来定义一个标识符及关键字别名,它是语言编译过程一部分,但它并不实际分配内存空间,实例像

    1.8K20
    领券