上QQ阅读APP看书,第一时间看更新
3.2 C程序的注释
代码3-1出现最多的是“/*”和“*/”包裹起来的中文语句,这些是注释。注释是用来帮助程序员阅读源代码和理解源代码的。编译器在编译源代码的时候,在目标代码生成以前,会把注释剔除掉,然后再进行编译。当然编译器是不会修改源文件的,这一切是在内存中完成。由于对于注释部分忽略不处理,就如同没有这些字符一样,所以注释不会增加编译后的程序的可执行代码长度,对程序运行不起任何作用。
对于注释,有以下几点说明:
(1)C语言的注释只有一种形式,就是以“/*”开始、以“*/”结束的注释对。
(2)编译器将“/*”与“*/”之间的任何文字,如代码、标点符号、制表符、换行等都当作注释不予以处理。例如:
/*这段注释里 含有空格*/ /*这段注释里 含有制表符*/ /*这段注释里有换 行*/ /*这 段 注 释 很 长 跨 越 很 多 行 */
(3)注释可以放在任何地方。通常,把注释置于要描述的代码段之前比较合适,而将变量的用途注释则放在变量定义后面。
/*本变量的用途是记录学生人数*/ int i_numbers; int i_numbers /*学生人数*/ int x, /*这段注释在代码之中*/ y;
注意 最后一行注释处于代码int x和y之间,这也是容许的。
(4)注释和代码一定要同步更新。代码修改而注释不做改变,这样的事情在实际开发中经常看见,而这样的情况可能会带来严重不良后果。
(5)注意注释的起始和结束对,在“/*”、“*/”两个字符之间是没有空格的。如果出现空格,如“/ *”,“* /”,则不是注释了。
(6)注释内部不能再出现注释对。如:
/*这是一个注释起始。/*又出现一个注释起始*/嵌套的注释结束*/ /*这是一个注释起始。*/再出现一个注释结束*/
解决这种嵌套注释的方法,就是在内层“/*”或者“*/”之间添加空格。
留给读者一个问题:“/**”、“//*”、“**/”哪些可以构成注释,哪些不能构成注释呢?
(7)适量而恰当的注释是良好编程风格的重要体现,是一种程序规范,可以用来概括程序的算法、标识变量和函数的意义,或者解释一段代码的意图。但是在代码中混杂过多的注释也许会使得程序更难于理解。如下的代码片段用了过多的注释,反而影响了代码的阅读。
/*定义长方形的长和宽*/ /*在计算面积的时候*/ /*需要使用长和宽*/ /*在计算周长的时候*/ /*也需要长和宽*/ /*如果长和宽相同*/ /*则此长方形就是一个正方形*/ int i_height, i_weight;