
于C语言书写而言,变量命名乃是起始之关键所在。有诸多初学者的程序出现报错状况,通常并非是逻辑层面的问题,而是变量名的书写不符合相应规矩,致使编译器根本无法识别。若能弄明白这四条基本规则,便能够助力你避开绝大多数的低级错误,进而使得代码能够顺利运行起来。
命名从字母开始
C语言规定,变量名的第一个字符须是英文字母,该字母可以是大写或小写的a到z,下划线被算作字母,因而变量名能用下划线开头,不过数字不能置于开头,像"2ndNumber"这般的写法会被编译器直接拒绝,这是由于编译器解析代码时,碰到数字开头会将其当成数值常量处理。

在实际去进行编程的过程当中,尽管以下划线作为开头是合法的情况,然而一般而言并不建议普通的变量采用这样的方式去使用。系统库函数以及编译器内部的变量常常会以下划线作为开头,要是你自己再去使用就容易引发命名冲突的状况。就好比"_count"这样的名字,有可能会在不经意之间覆盖掉系统所进行的定义。最为稳妥的一种做法是让变量名以字母作为开头,在这之后能够跟字母、数字或者下划线。

大小写代表不同变量
C 语言对大小写是严格加以区分的,此情况表明"Score"、"score"以及"SCORE"在编译器那里被视作是三个全然不一样的变量,这一特性给予了程序员更多的命名空间,然而也极容易潜藏隐患,像不经意间把"sum"写成"Sum"这种状况,编译器不会给出报错提示,可是程序逻辑说不定会全然出错。

团队进行协作之际,大小写混合使用常常会引发出来困惑,有些从事开发工作的人习惯采用驼峰命名法,举例来说像"studentName"这种形式,而有的人则偏好全小写并且加上下划线的方式,例如"student_name"这样的,对于项目而言应当预先约定好统一的风格,在进行调试的时候要是发现变量赋值之后值并没有发生改变,那么首先需要检查的便是变量名的大小写是不是写错了,这属于新手最容易踩到的坑当中的一个。
关键字绝对不能当名字
C语言预留了一批关键字,像int、if、return、while等,这些词语有着特殊语法含义,是不可以用作变量名的。要是试图用"int"当作变量名,编译器会直接给出报错。关键字的完整列表在C标准里有明确定义,一共有32个,涵盖控制语句、数据类型以及存储类说明符等。

存在一些刚开始接触的人,能够试图选用"Int"或者"INT"去避开限制,尽管这是符合法规的,然而却极为不建议这么做。这样的书写方式具备极强的混淆特性,在其他人阅读代码之际,极易被认为是关键词。更为妥当的举措是为变量赋予含有实际意义的名称,像是使用"index"替换"i",采用"count"替换"c",代码的可阅读程度会显著提高。
特殊符号一个都不能有
变量名里不可以出现空格,不可以出现标点符号,也不可以出现类型说明符。诸如"user name"种写法,是非法的。"first-name"这种写法,同样是非法的。"char*"这种写法,亦是非法的呀。空格会被解析成分隔符,致使编译器误认为变量名结束了。减号会被当作运算符,进而引发语法错误。百分号是被禁止的,问号是被禁止的,感叹号等同样是被禁止的。
非字母数字符号里唯一被允许的是下划线。不少人写变量名时习惯用"_"去连接单词,这属于正确做法。像"average_score"相较于"averagescore"要清晰得很多。要记住,变量名应当是一个整体,不存在任何分隔符号。要是变量名中出现了标点,编译器会在那个位置报错,给出"非法字符"或者"语法错误"的提示。

从规则到实践
需理解这四条规则,之后关键之处在于,于实际进行代码编写之际养成习惯。变量命名并非仅仅是为了使得编译器能够通过,然而更是为了让查看代码的人能够迅速理解。其名字应当直观地反映变量的用途,举例来说,"total_price"相较于"tp"要好,"student_age"相较于"sa"要好。良好的命名本身便属于注释。

在对变量名进行合法性检查之际哦 有四条规则能够在脑海中默默念叨呢 其一 它是不是以字母作为开头呀 其二 有没有因为大小写混合使用从而造成混淆的情况呢 其三是不是不小心使用了关键字呀 其四 有没能混进空格或者标点呢 当养成了这样的检查习惯之后呢 命名错误的情况就会大幅度地减少啦 好多编译器给出的报错信息是比较抽象的哦 预先进行规避可比事后再去调试要节省好多时间得多啦。
你的代码在日常编写期间,鉴于变量命名不符合规范,凭借编译器报错次数最多的,是哪一条规则所引发的呢?欢迎于评论区域分享你的遭遇过问题的经历。