美文网首页
第8章 运算符相关编码准则

第8章 运算符相关编码准则

作者: FelixDai | 来源:发表于2019-08-03 17:00 被阅读0次

8.1 恰当应用条件运算符有助于提高可读性

8.2 不要凭借运算符优先级排列算式

8.3 指针运算符应该紧接变量名

指针的定义方法有三类:

int* x;  // 数据类型后紧接*
int *x;  // 变量名前紧接*
int * x; // 数据类型和变量名中插入*

按照第一种方法可以写为如下形式:

int* x1, x2, x3;

以这种形式声明时,程序员会误以为x1, x2, x3都是指针,但实际并非如此,x2, x3是int型变量。
第三种方法和第一种一样,可能造成混淆。故第二种方法教其他方法简明又准确。

8.4 慎选移位运算,多用算术运算

移位运算比乘法运算更快,常用于需要极端快速运算的情况。
但移位运算也存在问题:

  1. 操作数为负数时,向左移位可能丢失负数的符号
  2. 程序难以理解

如果不是为了追求极端的效率,那么应该始终编写可读性高、便于理解的程序。

8.5 不要追求极端效率

追求极端效率的人常常为了追求更快的处理速度而编写特别复杂的语句,但维护成本绝不会低。
虽然效率很重要,但它并没有重要到值得牺牲代码的可读性,尤其在当今时代,计算机内存充足、CPU速度快如闪电,完全没必要执着于20世纪80年代的编码方式。

笔者是效率党,笔者认为虽然“当今时代的计算机内存充足、CPU速度快如闪电”,但目前市面上的各种游戏、硬件接口(驱动)程序和应用软件仍然存在“负优化”或是运行不畅的情况。此书中拿Linux操作系统的源码为例说明这种“投机取巧”的情况,笔者持消极态度。追求效率确实是会造成可读性大大降低,但是完全可以通过注释和技术文档等说明性文本帮助维护者理解代码含义。影响维护进度的主要原因是:代码编写者的思维方式和意图不能够完整、准确地传达给维护者

相关文章

  • 第8章 运算符相关编码准则

    8.1 恰当应用条件运算符有助于提高可读性 8.2 不要凭借运算符优先级排列算式 8.3 指针运算符应该紧接变量名...

  • 第5章 注释相关编码准则

    5.1 多种注释形态 5.1.1 不包含强调内容的单行注释 5.1.2 包含强调内容的单行注释 5.1.3 不包含...

  • 第4章 缩进相关编码准则

    4.1 大括号的位置 第一种风格:大括号和语句位于同一行 这种风格在C语言出现早期很常见。当时,使用C语言的程序员...

  • 第3章 间隔相关编码准则

    3.1 一行只写一条语句 此处所谓的“行”(line)值得是在编辑器上显示的行,而不是C语言的一条“语句”。 3....

  • 第14章 用户接口处理相关编码准则

    14.1 确保保存输入值的变量足够大 考虑数组和数据类型大小能够保存输入值 14.2 转换说明符和参数个数应保持一...

  • HTML 日常了解10(js篇)

    Unicode编码 相等运算符 条件运算符 运算符的优先级 代码块

  • 运算符

    自增自减 逻辑运算符 与或运算 _赋值运算符 关系运算符 Unicode编码

  • HTML-11day

    1、逻辑运算符 2、与或运算 3、赋值运算符 4、关系运算符 5、Unicode编码 6、相等运算符

  • 2018-12-01

    赋值运算符 关系运算符 Unicode编码 相等运算符 条件运算符 运算符的优先级 代码块 js操作属性 js换肤...

  • 第6、7章 标识符名称定义相关编码准则

    记录此书中的内容前先介绍目前业界常用的几种标识符命名方法: 一、骆驼命名法(Camel Case) 单词之间不以空...

网友评论

      本文标题:第8章 运算符相关编码准则

      本文链接:https://www.haomeiwen.com/subject/pqojdctx.html