AI Summary 3.20524.4 C语言命名规范摘要 2026-10-09
C语言命名规范 变量用小写加下划线(如 student_age) 常量与宏用全大写加下划线(如 MAX_SIZE) 函数用动词短语(如 calculate_average) 结构体/枚举类型用大驼峰(如 StudentInfo) 并避免关键字 拼音和模糊命名
C语言命名规范
一、基本命名原则
合法字符:字母、数字、下划线,且不能以数字开头
区分大小写:
count与Count是不同标识符避免关键字:如
int,if,while等见名知意:名称应准确表达用途,避免
temp,a,data1等模糊命名风格一致:项目内保持统一风格比选择哪种风格更重要。
二、变量命名规范
全小写 + 下划线(snake_case)
int student_age;
float average_score;
循环变量可用
i,j,但一般变量避免单字母避免拼音混英文,如
shujuCount,应使用data_count。全局变量可加前缀:
g_(全局)、s_(静态)
三、常量与宏命名
全大写 + 下划线
#define MAX_STUDENTS 100
const int BUFFER_SIZE = 512;
宏加模块前缀避免冲突,如
PROJECT_UART_TIMEOUT
四、函数命名
动词开头 + 下划线或小驼峰
snake_case:
calculate_average()、print_student_info()camelCase:
calculateAverage()(部分团队使用)
函数名应体现动作 + 目标,如:
void uart_send_data();
五、结构体、枚举、类型命名
大驼峰(PascalCase)
typedef struct {
int age;
} StudentInfo;
enum ColorType { RED, GREEN, BLUE };
结构体成员可用 snake_case 或 camelCase,但需保持项目一致
六、文件命名
全小写 + 下划线
uart_driver.c
uart_driver.h
七、常见命名陷阱与避免方式
避免单字符变量(除循环变量)
避免拼音命名:降低跨团队可读性
避免误导性缩写:如
ptr却不是指针避免大小写混淆:如
totalCountvsTotalCount宏不要与函数名混淆:如
#define max(a,b)。
八、不同场景的命名风格建议
场景 | 推荐风格 | 理由 |
|---|---|---|
嵌入式/驱动 | snake_case | 与 Linux 内核一致,避免大小写混淆 |
应用层/业务逻辑 | camelCase | 更符合面向对象风格,阅读友好 |
跨平台项目 | Windows 用 camelCase,Linux 用 snake_case | 与平台生态一致 |
九、示例代码(综合规范)
C复制#include <stdio.h>
#define MAX_ATTEMPTS 3
typedef struct {
int user_id;
float account_balance;
} UserInfo;
float calculate_interest(float principal, float rate) {
return principal * rate;
}
int main() {
int login_count = 0;
UserInfo user = {101, 1500.5};
printf("User ID: %d\n", user.user_id);
printf("Max Attempts: %d\n", MAX_ATTEMPTS);
return 0;
}
总结
C语言命名规范的核心是 清晰、统一、可维护
无论选择 snake_case 还是 camelCase
团队统一规则 能显著提升代码质量与协作效率