文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

C语言中怎么命名标识符

2023-06-03 09:57

关注

这期内容当中小编将会给大家带来有关C语言中怎么命名标识符,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

1、标识符的命名要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解

说明:尽可能给出描述性名称,不要节约空间,让别人很快理解你的代码更重要。

示例:好的命名:

interror_number;

intnumber_of_completed_connection;

不好的命名:使用模糊的缩写或随意的字符:

intn;

intnerr;

intn_comp_conns;

2、除了常见的通用缩写以外,不使用单词缩写,不得使用汉语拼音

说明:较短的单词可通过去掉“元音”形成缩写,较长的单词可取单词的头几个字母形成缩写,一些单词有大家公认的缩写,常用单词的缩写必须统一。协议中的单词的缩写与协议保持一致。对于某个系统使用的专用缩写应该在注视或者某处做统一说明。

示例:一些常见可以缩写的例子:

argument 可缩写为arg

buffer 可缩写为buff

clock 可缩写为clk

command 可缩写为cmd

compare 可缩写为cmp

configuration 可缩写为cfg

device 可缩写为dev

error 可缩写为err

hexadecimal 可缩写为hex

increment 可缩写为inc、

initialize 可缩写为init

maximum 可缩写为max

message 可缩写为msg

minimum 可缩写为min

parameter 可缩写为para

previous 可缩写为prev

register可缩写为reg

semaphore 可缩写为sem

statistic 可缩写为stat

synchronize 可缩写为sync

temp 可缩写为tmp

3、产品/项目组内部应保持统一的命名风格

说明:Unix like和windows like风格均有其拥趸,产品应根据自己的部署平台,选择其中一种,并在产品内部保持一致。

例外:即使产品之前使用匈牙利命名法,新代码也不应当使用。

4、用正确的反义词组命名具有互斥意义的变量或相反动作的函数等

示例:

add/remove              begin/end               create/destroy

insert/delete           first/last              get/release

increment/decrement     put/get                 add/delete       

lock/unlock             open/close              min/max          

old/new                 start/stop              next/previous    

source/target           show/hide               send/receive     

source/destination      copy/paste              up/down

5、尽量避免名字中出现数字编号,除非逻辑上的确需要编号

示例:如下命名,使人产生疑惑。

#define EXAMPLE_0_TEST_

#define EXAMPLE_1_TEST_

应改为有意义的单词命名

#define EXAMPLE_UNIT_TEST_

#define EXAMPLE_ASSERT_TEST_

6、标识符前不应添加模块、项目、产品、部门的名称作为前缀

说明:很多已有代码中已经习惯在文件名中增加模块名,这种写法类似匈牙利命名法,导致文件名不可读,并且带来带来如下问题: 

1 第一眼看到的是模块名,而不是真正的文件功能,阻碍阅读; 

2 文件名太长; 

3 文件名和模块绑定,不利于维护和移植。若foo.c进行重构后,从a模块挪到b模块,若foo.c中有模块名,则需要将文件名从a_module_foo.c改为b_module_foo.c

7、命名规范

7.1 文件命名统一采用小写字符

说明:因为不同系统对文件名大小写处理会不同(如MS的DOS、Windows系统不区分大小写,但是Linux系统则区分),所以代码文件命名建议统一采用全小写字母命名。

7.2 全局变量应增加“g_”前缀

7.3 静态变量应增加“s_”前缀

说明:增加g_前缀或者s_前缀,原因如下: 

首先,全局变量十分危险,通过前缀使得全局变量更加醒目,促使开发人员对这些变量的使用更加小心。 

其次,从根本上说,应当尽量不使用全局变量,增加g_和s_前缀,会使得全局变量的名字显得很丑陋,从而促使开发人员尽量少使用全局变量。

7.4 禁止使用单字节命名变量,但允许定义ijk作为局部循环变量

7.5 不建议使用匈牙利命名法。

7.6 函数命名应以函数要执行的动作命名,一般采用动词或者动词+名词的结构。

7.7 对于数值或者字符串等等常量的定义,建议采用全大写字母,单词之间加下划线‘_’的方式命名(枚举同样建议使用此方式定义)。

示例:

#define PI_ROUNDED 3.14

7.8 除了头文件或编译开关等特殊标识定义,宏定义不能使用下划线‘_’开头和结尾。

说明:一般来说,’_’开头、结尾的宏都是一些内部的定义,ISO/IEC 9899(俗称C99)中有如下的描述(6.10.8 Predefined macro names):

上述就是小编为大家分享的C语言中怎么命名标识符了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网行业资讯频道。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯