C++中,判断和自加哪个耗时少?

发布时间:2024-05-17 13:35 发布:上海旅游网

问题描述:

以 if(a==b) 和 a++ 为例。
判断本身(不包含判断后需要执行的代码)和自加运算哪个效率高?
a,b都是两位数

问题解答:

操作系统先从指令寄存器获取指令,然后计算变量的物理地址,把变量值从代码段提出出来,进行操作完后再返回其值。。。这中间效率不低。。。 当然了;a++ 是比a=a+1 效率要高很多,毕竟a++只提取一次变量, 而后者提取2次!所以鼓励人使用复合运算符;比方说 += -= *= /= %= 等等

我觉得应该是后者效率要高些。因为前者是在内存中读a然后再读b,最后再判断。而后者是在内存中取a然后加1就ok了。

热点新闻