C语言简明规范
1·关于命名标准
1-1对命名的一般方针
1)进行命名的时候,在充分把握数据对象(变量、函数、etc)内容的基础上,进行能明确显示其内容的命名。
2) 命名满足不了上述1、2条件的时候,观察是否是以多意使用此变量,这可能是函数分割的不充分。进行相关的修改之后,试试再次进行命名。
3) 不限制命名的单词数
4) 各单词的开头用大写字母,并以此作为文字区分符(不使用下划线)
5) 单词尽量选择容易明白的英语单词。
6) 不能省略必要的前置词
7) 禁止只以大写字母/小写字母的不同来区别命名
8) C语言习惯使用的单词可以保留使用(argc argv)
9) 命名时不要使用C语言的保留字(FOR)
10) 禁止在数据的一部分插入数字区别数据
1-2遵照对命名的方针的命名例子
采用经常被使用的表现形式,举一个根据英语命名的具体例子
动词+目标字 或 目标字+动词(的过去分词 )
变量/函数名 | 含义 |
GetData | 取得数据 |
PassData | 递交数据 |
DeleteDataFromCD | 从CD删除数据 |
PassFuntionParameter | 向函数递交自变量(PassParamrterToFunction也可以) |
1-3对变量/函数的命名规定
1) 变量名要在20个字符以内,函数名要在30个字符以内。
2) 变量/函数名的构成要素为[(范围限定符_)+(型)+(标识符)]
3) 对在多个源文件之间共同使用的全局变量/全局函数需要添加范围限定符;对只在单一源文件内使用的局部变量/函数加与不加与都可以。
6) 作为对指针、数组的接头词,使用各自的‘p’、‘a’。
7) 含指针、数组的变量/函数名的命名方法遵照以下规章。
对数组的指针(pointer to array)
(范围限定符_)+ pa +(型)+(标识符)
对指针数组(array of pointer)
(范围限定符_)+ ap +(型)+(标识符)
9) 关于用户定义型原则上不记录型名(比如说,独自制作了为0riginaData名的int型的用户定义型时,对变量名附加了表示原来型名的i成为‘i-***’,而不把省略了0riginaData的ot作为型名称为‘ot-***’)。但是关于在软件技术部全体共同使用的用户定义的型,应该一并管理,制作共同使用的型名的接头词。
10) 标识符最低含一个名词。
2.关于源文件整体的标准
2-1源文件的构成
1) 一个源文件的最大行数为800行(包含注释和空行)。
2) 源文件中1行中的语句的最大文字数为120。
3) 文件内一个TAB为4个半角空格。(另外,以汇编程序编程时,一个TAB也要尽量为4个半角空格,必须为8个半角空格时,也要以4个半角空格为1个TAB,分为2个TAB)
2-2源文件内函数的配置
1) 在同一个源文件内,哪个函数都不调用的最上层的函数(全局函数)只定义一个。但是,小的全局函数并列构成的任务(例:mode的key处理等)例外。
2) 一个源文件内函数定义的顺序以最上层的函数为打头,以后按进行处理的顺序定义。
3) 在一个函数内,被多个函数调用的共通函数,在源文件的末尾整理定义。
4) 被多个源文件的调用的公共函数,按照功能整理,制作只定义公共函数的公共函数文件。但是,公共函数有很多,一个源文件归纳不了时,按照功能分为几个源文件。
2-3对源文件的注释框
源文件注释框按照以下的例子,记叙所有的项目。当记叙项目没有时,记述为“无”。注释使用英语、汉语都可以。
/********************************************/ | |
3对各种说明、定义的标准
3-1关于制作包含文件的规定
1) 包含文件名全部以小写字母书写。
2) 关于在读入有关文件时,有必要先读进的头文件(Required IncIude File),在注释框中记述。
3) 包含文件内的各种数据的定义/说明的格式,以在源文件内的内容为标准。
3-2关于宏定义和预处理器命令格式的规定
1) 跨越多个文件使用的宏全部在包含文件内定义。
2) 只在一个源文件内,或只在一个函数内使用的宏,全部以包含文件内的“宏定义节”进行定义。
3) “宏定义节”的标题,要设有表示开始的注释框。
4) 关联型强的宏之间要在一个地方归纳整理,统一定义。
5) 所有的预处理器命令(#define、#if、#include、#etc)从第一列开始叙述。但是在根据“#if”等的嵌套内部,要缩进“一个空格”。但 是被预处理器命令包围的、以通常的C语言记述的代码要和前后以C语言记述的代码对齐缩进。
6) 所有的预处理器命令以小写字母记述。
7) 定义的宏名字全部记述在同一列。
8) 关于宏定义的原常量及有关联内容的常量,应对齐在同一列上。
9) 宏名字命名的规定
● 宏命令的名字要在20字以内。
● 宏命令的名字全部以大写字母记述。
● 构成宏名字的各单词之间要以‘-’区分。
● 关于构成各单词的选定、顺序、省略方法等,遵照3-1对命名的一般方针、以及3-3关于单词的省略的记述。
10) 对所有的宏,使用行末注释表示其宏使用目的。但对宏命名能充分表示其使用目的的话,则可以省略不用。
11) 宏有单位的时候,一定要把这个作为注释记述。
12) 定义只在特定函数内使用的宏时,要在行末注释记述其函数名。
3-3对宏函数定义、使用的规定
1) 关于宏函数的制作、使用,遵照以下的规定。
● 宏制作者记述该宏的理由书(关于该处理制成宏比函数好的根据)。
● 复验码时,对复验说明制作该宏的理由。
● 由上述的复验者判断宏是否比函数好,承认宏的使用。
● 对于将来有泛用使用可能的宏,全部在软件技术部一并管理、把它保存在专用的包含文件内、作为任何人都可以利用的资产。
2)制作宏时要特别注意以下几点。
● 把宏内使用的所有的变量以括号括起来。
● 把记述的宏全体以括号括起来。
3)使用宏时注意以下几点。
对于任何宏,对宏的自变量只代入变量。不许代入数式、函数。
3-4关于用户定义型的规定
1) 关于在多个源文件间共同使用的用户定义型,在包含文件内进行说明。
2) 关于在一个源文件间共同使用的用户定义型,全部在包含文件内的“型定义节”内进行说明。
c语言基本名词概念
3) 在“型定义节”的标题设置明确表示节开始的注释框。
4) 只在一个函数内使用的用户定义型可以在各个函数内部进行其说明。
5) 说明型的顺序,格式遵照变量定义的顺序。
6) 用户定义型必须以‘typedef’进行说明,不许以宏定义进行说明。
7) 旧型名/新型名的标题应同时以同一行对齐。
4 对函数定义的说明
4-1对函数自变量的定义
1) 定义函数时,自变量一行只定义一个。
2) 一个函数的自变量数最好5个以下,必须使用5个以上的自变量时,其最大值为7。
3) 使用结构体定义的变量时,可以在自变量上述范围内记述时,把每个成员作为自变量。超过上限时,以结构体作为自变量。
4-2函数的注释框
1) 对函数全体记述注释框时,要记述以下内容。
·FunctionName(函数名)
·Description(处理记述)
·ReturnCode(返回值)
·Data(制作日期)
·Author(制作者、社名)
2) 对全体函数记述注释框时,使用时一定要记述以下内容。
· Rlobal Varible(全局变量)
· File Static Variable(文件static变量)
· Function Static Varible(函数static变量)
3) 对全体函数记述注释框时,在函数内部进行修改时,一定要记述以下的内容。
· Revision History(修改履历)
4)对全体函数记述注释框时,尽可能记述以下内容。
· CalledBy(读取原来的函数)
5)注释英语日语都可以。
4-3对函数内部格式的规定
1) 函数的SIZE除了注释、空格行、变量定义、调试开关,要在60各字以内。
但是,由于switch有多数的分歧处理时不设置这个限制。
2)函数内部的一行语句的最大文字数为120。
3) 函数定义要从向函数的注释框开始,不空行记述。
4) 函数的定义从第一列开始写。
5)函数的自变量一行只定义一个。
6) 定义函数时,对全部的自变量付与行末注释。但是,函数名充分表达了参数
内容时可省略。
7)函数开始的‘{’从函数的定义行开始不空行记述。
8}表示函数开始、终了的‘{’‘}’从第1列开始记述。
9)函数的第1行从第1列、1tob缩进(半角空格4文字),进行记述。
10)函数执行语句全部终了后,不空行记述‘}’
4-4对函数内部的注释的一般规定。
1) 在函数内部使用的注释形式分为以下2种。
● 行注释—在成为对象处理的数据块前面的行中设置注释用的行进行记述的注释。
● 行末注释—对在一行记述的内容(处理、变量定义、etc),只在行末记述的注释。
2) 加入码的修改地方,“修改处明示注释”尽量使用行末注释。但是,行末没有足够的空格时,在适当的码的下一行行末、或适当码的前一行行末注释也可以。修改涉及多行时,要在修改的开始位置、终了位置,明确付与被修改码的范围的注释。
3) 在“修改处明示注释”中记述以下内容。
·在该函数内通过修改的号
·修改日期
·修改者名
·只在修改涉及行多时,表示修改开始位置和终了位置的记号。
(具体的,/*No1 96/04/15Suzuki—start*/
/*No96/04/15 Suzuki—end*/)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论