刚接触 C 语言的你们,常常看见 int a =3;,char c; … 这有错吗?当然没有,但是如果在面试大厂时还是那样,结果将是与大厂无缘 ~
变量的命名对比
- 这一节好好聊聊变量名的那些事,初学 C 语言时的你见到的变量名通常如下图。作为初学者,大部分教学视频里这样写只是为了让你理解,但这绝不能模仿。因为变量名的命名直接决定软件构件的效果,代码的性能,安全性,效益,bug … 好的变量名会带来长期的效益,所以变量名的命名是有 “艺术” 的 ~
#include<stdio.h>
int main() {
int a = 1011; //定义了一个整形变量 a = 10
double b = 2000.09; //定义了一个浮点数变量 b = 2000.09
return 0;
}
- 看到以上的命名,你直观获取到的信息只限于注释中的内容,但若是按下方的去命名,你一眼就可以看明白这个变量到底代表着什么 ?如果一眼看不明白,请百度翻译,谢谢 ~
#include<stdio.h>
int main() {
int person_number = 1011; //定义了一个整形变量 人的编号 = 1011
double person_wechat_balance = 2000.09; //定义了一个整形变量 人的微信余额 = 200.09
return 0;
}
函数的命名对比
- 当然,命名规则绝不限于变量,还有函数名及函数里面的参数,比如编写一个判断是否为闰年的函数。对比以下两种的命名方式,哪种你感觉见其形,知其义
#include<stdbool.h>
//写法一
bool fun(int y) {
if (不是闰年) //这里就不写具体的判读条件了,这节不纠结于代码本身
return false;
if (是闰年)
return true;
}
//写法二
bool is_leap_year(int year) { //leap year 百度翻译结果为:闰年
if (不是闰年)
return false;
if (是闰年)
return true;
}
什么是好的命名?
- 可读性,容易记,恰如其分,一眼就能看出来这是干啥,比如下图所展示的
int person_number = 1011;
double person_wechat_balance = 2000.09;
bool is_leap_year(int year) { //leap year 百度翻译结果为:闰年
...
return true;
}
- 在 C 语言中常见的还是下划线命名法,即名称中的每一个逻辑断点都用一个下划线来标记,其中没有大写字母。例如:
print_employee。下划线命名法是随着 C 语言的出现流行起来的,在UNIX / LIUNX这样的环境,以及 GNU 代码中使用非常普遍。 - 但在 Java 中,常用驼峰命名法
小驼峰命名法:除第一个单词之外,其他单词首字母大写,例如:myFirstName、myLastName,常用于变量名,函数名。
大驼峰命名法(又称为帕斯卡命名法):相比小驼峰法,大驼峰法把第一个单词的首字母也大写了,例如:public class DataBaseUser,常用于类名,属性,命名空间等。
命名误区
- 现在你可能会认为不就是详细吗 ?简单,比如写一个函数判断 他是不是2022年好莱坞最帅的男演员 ,下面的函数名确实可以让你一眼明白他要干什么,但你不觉得它太长了吗 ?长 和 完整 要学会取舍 ~
#include<stdbool.h>
bool is_the_most_handsome_actor_in_Hollywood_in_2022(?♂️){
...
return true;
}
- 可以换一种方式,牺牲长度,但加注释
#include<stdbool.h>
/* 判断他是否为 2022 年好莱坞最帅的男演员 */
bool is_most_handsome_actor(?♂️){
...
return true;
}
- 还有一点,也是很常见的一点,定义变量名别用拼音!!!比如,定义火车的速度,以下两种,自己对比,引以为戒!
double huocheshudu = 120;
double train_velocity = 120; //单位:km/h
最后提醒一点,进入公司以后,你写的代码不是只有你一个人看,而是一堆人去看,当你依然用着 int a,int b;时,你的同事和老板可能会用 ⌨️ 在你头上一顿爆扣 …

版权声明:本文为qq_48795733原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。