《C语言深度解刨》阅读笔记 II

  • 编译器会将注释剔除,但不是简单的剔除,而是用空格代替原来的注释。
  • /*…*/这种形式的注释不能嵌套,/*总是与离它最近的*/匹配。
  • y = x/*p,表示x 除以p 指向的内存里的值,把结果赋值为y。但要注意代码写法应该为y = x/(空格) *p 或者y = x/(*p)。否则编译器会把/*当作是一段注释的开始,把/*后面的内容都当作注释内容,直到出现*/为止。
  • 注释应当准确、易懂,防止有二义性。错误的注释不但无益反而有害。
  • 边写代码边注释,修改代码同时修改相应的注释,以保证注释与代码的一致性。不再有用的注释要及时删除。
  • 注释是对代码的“提示”,而不是文档。程序中的注释应当简单明了,注释太多了会让人眼花缭乱。
  • 一目了然的语句不加注释。
  • 对于全局数据(全局变量、常量定义等)必须要加注释。
  • 注释采用英文,尽量避免在注释中使用缩写,特别是不常用缩写。因为不一定所有的编译器都能显示中文,别人打开你的代码,你的注释也许是一团乱码。还有,你的代码不一定是懂中文的人阅读。
  • 注释的位置应与被描述的代码相邻,可以与语句在同一行,也可以在上行,但
    不可放在下方。同一结构中不同域的注释要对齐。
  • 当代码比较长,特别是有多重嵌套时,应当在一些段落的结束处加注释,便于
    阅读。
  • 注释的缩进要与代码的缩进一致。
  • 注释代码段时应注重“为何做(why)”,而不是“怎么做(how)”。
    说明怎么做的注释一般停留在编程语言的层次,而不是为了说明问题。尽力阐述“怎么做”
    的注释一般没有告诉我们操作的意图,而指明“怎么做”的注释通常是冗余的。
  • 数值的单位一定要注释。
    注释应该说明某数值的单位到底是什么意思。比如:关于长度的必须说明单位是毫米,
    米,还是千米等;关于时间的必须说明单位是时,分,秒,还是毫秒等。
  • 对变量的范围给出注释,尤其是参数。
  • 对一系列的数字编号给出注释,尤其在编写底层驱动程序的时候(比如引脚
    编号)。
  • 对于函数的入口/出口数据、条件语句、分支语句给出注释。
  • 避免在一行代码中或表达式中插入注释。
  • 复杂的函数中,分支语句、循环语句结束后需要适当的注释,方便区分各分支或循环体。
  • 对于不需要被编译的区域要使用条件编译来实现。
  • \是一个接续符。C语言中以反斜杠(\)表示断行。编译器会将其剔除后面的字符自动接续到前一行。但是注意:反斜杠之后不能有空格,反斜杠的下一行之前也不能有空格。
  • 反斜杠除了可以被用作接续符,还能被用作转义字符的开始标识。
  • 双引号引起来的都是字符串常量,单引号引起来的都是字符常量。比如:‘a’和“a”完全不一样,在内存里前者占1 个byte,后者占2个byte。
  • 位运算需要用宏定义好后再使用。
  • 如果位操作符‘~’和‘<<’应用于基本类型无符号字符型或无符号短整型的操作数,结果会立刻转换成操作数的基本类型。
  • 位运算符不能用于基本类型是有符号的操作数上。
  • 一元减运算符不能用在基本类型无符号的表达式上,除非在使用前对两个操作数进行比大小判断,并且被减必须大于减数。
  • 花括号的作用是什么呢?我们平时写函数,if、while、for、switch 语句等都用到了它,
    但有时又省略掉了它。简单来说花括号的作用就是打包。你想想以前用花括号是不是为了
    把一些语句或代码打个包包起来,使之形成一个整体,并与外界绝缘。
  • C 语言有这样一个规则:每一个符号应该包含尽可能多的字符。也就是说,编译器将程
    序分解成符号的方法是,从左到右一个一个字符地读入,如果该字符可能组成一个符号,
    那么再读入下一个字符,判断已经读入的两个字符组成的字符串是否可能是一个符号的组
    成部分;如果可能,继续读入下一个字符,重复上述判断,直到读入的字符组成的字符串
    已不再可能组成一个有意义的符号。这个处理的策略被称为“贪心法”。需要注意到是,除
    了字符串与字符常量,符号的中间不能嵌有空白(空格、制表符、换行符等)。按照这个规则可能很轻松的判断a+++b 表达式与a++ +b 一致。
  • C 语言的符号众多,由这些符号又组合成了各种各样的运算符。既然是运算符就一定有
    其特定的优先级。
  • 2/(-2)的值是多少?
  • 一些容易出错的优先级问题
  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

七十二旹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值