代码中有良好的注释,无疑能大大提高代码的可读性,无论对于自己还是阅读者。
当你完成一个比较大的项目时候,如果你没在在你的代码中适当的地方做很好的注释,估计没有人会愿意看你的代码,过一段时间后,估计连你自己也不想看,恨不得马上加上注释。因为很明显,最简单的一个变量 a。你不注释的话,谁会知道这变量代表什么意思。对吧?:)
既然注释这么的重要,那我们就需要了解注释的一些规则、特殊情况和风格。
int/*这是注释*/a; //语句 1
in/*这是注释*/t a; //语句 2
char *a = "hello //world"; /*语句 3*/
a = b/*p; //语句 4
语句 1 :对于这句,我们要知道编译器是如果处理注释的。当然,编译器肯定会忽视注释,但是,不是普通的忽视,编译器会用空格将注释替代掉。所以语句 1 是正确的。
语句 2 :上面说了会用空格代替掉原来的注释,这里也不例外。但是,这里加上空格就不对了。因为关键字 int 之间不能有空格。所以语句 2 是错误的。
语句 3 :我们顺着看下去,咦!有 “ // ”。我们都知道这符号的意思是单行注释的意思,好了。那不用说,后面跟着的内容肯定就是注释了!如果你是这样想就错了。看清楚,这句上有个双引号,这双引号里的字符都被当作为字符串。所以, “ // ”也不例外。
语句 4 :这句这么简单,一看就知道是 b 除以指针变量P指向的内容了。呵,那你又错了。这里是多行注释 " /**/" 的开头!从 /*开始,其右边的内容全部都为注释,直到遇到 */ 。其实,只要在 / 与 * 之间没有空格的话,编译器都会认为这是注释的开头。
下面列出注释的基本要求:
- 注释应当正确无误,易懂,不能存在二义性。误导别人
- 注释是对代码中某些语句,变量的简单说明。不是一篇文档,不需要你去花长篇大论去描述一个变量或语句。
- 不要在哪些显浅易懂的地方做一些多余的注释。例如 i ++ ; // i 自增 1
- 对于全局变量,常量定义等必须要加注释。
- 注释采用英文,因为绝大部分优秀代码都用英文注释,而且不是所以编译器都能识别中文,不能识别的编译器,你的中文注释就变成乱码注释了。
- 注释的位置与被描述的代码相邻。可以放在其上方或者同一行,但是不能放在下方。难道你要别人看完你的代码再去看注释?那么效率就大大折半了。
- 数值的单位一定要注释。
- 对变量的范围给出注释。
- 对函数的作用,参数,返回值和注意事项给出注释,一般按照一定的格式写在函数名上方。