你应该用复合赋值语句?
增加一个变量的值有两种方式,如:a = a + 5和a += 5。存在两种增加一个变量值的方法有何意义呢?K&R C设计者认为复合赋值符可以让程序员把代码写得更清楚些。另外,编译器可以产生更为紧凑的代码。
现在,a = a + 5和a += 5之间的差别不再那么显著,而且现代的编译器为这两种表达式产生优化代码并无多大问题。但是,要考虑如下两条语句:
此处a为数组。在第一种形式种,由于编译器无从知道f函数是否具有副作用,所以它必须两次计算数组a的下标表达式的值。而在第二种形式中,下标表达式只需计算一次,所以第二种形式效率更高。并且,从书写的角度看,第一种形式的下标表达式需要书写两次,而第二种形式只需书写一次。
基于这些理由,我们应该使用复合赋值语句。
历史文章精选:
09 getchar()、getche()、getch()的区别?
【每日一句】
高度不够,看到的都是问题;格局太小,纠结的都是鸡毛蒜皮。
我是肥胖的正念君
觉得正念君很胖的话
赞 (0)