代码是写给机器运行的,也是写给人读的——注释就是给读者的说明书。
// 写单行注释、用 /* */ 写块注释;| 写法 | 含义 | 例子 |
|---|---|---|
// 文字 | 单行注释:到行尾为止 | int n; // 输入的数 |
/* 文字 */ | 块注释:跨多行 | /* 头文件区 */ |
| 缩进(2 或 4 空格) | 体现"括号层级",一眼看出嵌套 | if(){ <缩进> } |
| 命名 | 变量名说清"是什么",别用 a1、temp | score、maxScore |
/* 外层 /* 内层 */ 外层结束 */ ——内层的 */ 会让外层提前结束,后面的 外层结束 */ 就成语法错误了。// 只管到行尾:它不会跨行,下一行又得重新写 //。score),别用 score1、a、temp 这类"过一小时自己都看不懂"的名字。写注释,和给一台机器写操作说明书、给一份菜谱写步骤是一个道理:懂的人不需要,不懂的人很需要。 机器只看代码,但改代码的人要读注释——它降低的是"人读代码"的成本。
缩进和命名,相当于作文里的分段、标点、小标题:一篇没有段落的长文没人读得下去,
一段不分层、全是 a b c 的代码也一样。好的代码风格 = 好的"写作习惯"。
// 注释 的作用范围到哪为止?// 是单行注释,从 // 起一直到本行行尾;换行后就恢复正常代码。/* a /* b */ c */
/* */ 不嵌套——第一个 */ 就结束块注释,后面的 c */ 变成游离代码 + 多余的 */,语法错误。