x=x+1 , x+=1 , x++ 哪个效率高?

做面试题t突然看到了这个题,挺有意思的,题目不难,简单说一下
考点:对编译器工作原理的理解
面试官大佬们就想考察我们这个知识!!!

答案:x++效率最高

x=x+1最低,因为它的执行过程如下:

(1)读取右x的地址。
(2)x+1.做加1操作
(3)读取左x的地址。
(4)将右值传给左边的x(编译器并不认为左右x的地址相同)。

x+=1其次,其执行过程如下:

(1)读取右x的地址。
(2)x+1.做加1操作
(3)将得到的值传给x(因为x的地址已经读出)。

x++效率最高,其执行过程如下:

(1)读取右x的地址。
(2)x自增1。

喜欢的可以关注一下小编的公众号----嵌入式简单说
喜欢的可以关注一下小编的公众号

Logo

openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。

更多推荐