c语言中y?
一、运算过程不同
1、++y:运算过程为y首先进行自加运算,之后再执行y表达式。
2、y++:运算过程为先执行y表达式,之后进行自加运算。
二、内存过程不同
1、++y:内存中寄存器先自增1,之后执行y。
2、y++:内存中先执行y,之后寄存器增加1。
扩展资料
自增自减运算符存在于C/C++/C#/Java等高级语言中,它的作用是在运算结束前(前置自增自减运算符)或后(后置自增自减运算符)将变量的值加(或减)一。
相较于这些语言中的+=和-=运算符,自增运算符更加简洁,且可以控制效果作用于运算之前还是之后,具有很大的便利性。
自增运算符 ++ 使操作数的值加1,其操作数必须为可变左值(可简单地理解为变量)。
自减运算符--与之类似,只不过是变加为减而已。
在同一条语句中,被操作的数出现多次是可以通过编译的,但是其在C++ Standard等语言标准中被定义为"Undefined behavior"(不确定的行为),即不同的编译器或编译器版本所编译得到的机器码可能不尽相同。
不推荐在同一条语句中使被操作的数出现多次,这不仅仅将导致程序的含义难以理解,可读性大幅降低,同时可能导致不同的编译器或编译器版本得到不同的结果。