C语言编程规范:变量命名与风格指南
需积分: 50 135 浏览量
更新于2024-09-13
收藏 64KB DOC 举报
“C语言变量名命名规则”
C语言是一门严谨的编程语言,对于变量的命名有着严格的规范,这些规则不仅有助于代码的可读性,还能提升代码的维护性和团队协作效率。以下是对C语言变量名命名规则的详细说明:
1. **程序风格**:
- **阶梯层次组织**:在编写C程序时,应遵循阶梯式缩进,通常每个层次缩进4个空格。例如,当打开一个大括号时,新开始的代码行应该在其前面的行向右缩进4个空格。相应地,匹配的大括号应该在同一列上,而对继行则需要再次缩进4个空格,以便清晰地显示代码结构。
- **提示信息**:为了支持多语言开发,所有非临时的提示信息应定义在资源文件中,而不是直接写在代码中。
- **变量定义位置**:推荐将变量定义放在函数的开始位置,这样有利于代码的阅读和理解。
2. **命名规则**:
- **匈牙利法则**:这是C语言中常用的变量命名方法,它将变量类型信息包含在变量名的开头。例如,布尔型变量以“b”开头,无符号字符型变量以“uc”开头。每个单词的首字母大写,如“bTurnOn”表示布尔类型的开关变量。对于不常见的变量,应在定义时添加注释以解释其用途。
- **变量类型与前缀**:
- `bit`:位域变量,如`bitRXEN`表示接收使能位。
- `b`:布尔变量,如`bTurnOn`。
- `uc`:无符号字符变量,如`ucError`。
- `c`:字符变量,如`cName`。
- `w`:无符号短整型变量,如`wMsg`。
- `n`:短整型变量,如`nCnt`。
- `u`:无符号整型变量,如`uiLen`。
- `i`:整型变量,如`iVal`。
- `ul`:无符号长整型变量,如`ulMaxTh`。
- `l`:长整型变量,如`LOffset`。
- `li`:长整型变量,如`liCount`。
- `ll`:长长整型变量,如`llSum`。
- `f`:浮点型变量,如`fAngle`。
- `d`:双精度浮点型变量,如`dRadius`。
- `e`:枚举类型变量,如`eType`。
- `p_`:一级指针变量,如`p_iVal`。
- `pp_`:二级指针变量,如`pp_iVal`。
- `a_`:一维数组,如`a_chDispName[]`。
- `aa_`:二维数组,如`aa_chPrtName[][]`。
- `fn`:函数,如`void fnProc(void)`。
- `pfn`:函数指针,如`pfnFlashWrite`。
- `lpfn`:回调函数指针,如`lpfnAbort`。
- `st`:结构体,如`stTimeNode`。
- `l_`:局部变量,如`l_iCount`。
- `s_`:静态变量,如`s_pQData`。
遵循这些规则,可以创建出易于理解、易于维护的C语言程序,同时也有助于减少编程错误。在实际开发中,保持一致的命名习惯是至关重要的,因为它直接影响到代码的可读性和团队协作的效率。
2020-09-18 上传
2012-04-01 上传
2022-01-07 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
静虑凡尘
- 粉丝: 24
- 资源: 26
最新资源
- 构建基于Django和Stripe的SaaS应用教程
- Symfony2框架打造的RESTful问答系统icare-server
- 蓝桥杯Python试题解析与答案题库
- Go语言实现NWA到WAV文件格式转换工具
- 基于Django的医患管理系统应用
- Jenkins工作流插件开发指南:支持Workflow Python模块
- Java红酒网站项目源码解析与系统开源介绍
- Underworld Exporter资产定义文件详解
- Java版Crash Bandicoot资源库:逆向工程与源码分享
- Spring Boot Starter 自动IP计数功能实现指南
- 我的世界牛顿物理学模组深入解析
- STM32单片机工程创建详解与模板应用
- GDG堪萨斯城代码实验室:离子与火力基地示例应用
- Android Capstone项目:实现Potlatch服务器与OAuth2.0认证
- Cbit类:简化计算封装与异步任务处理
- Java8兼容的FullContact API Java客户端库介绍