这是关于++运算符的问题。这是一个无法解决问题的问题,但我相信知道答案会非常有用。因此,虽然StackOverflow是一个信息来源,但我想在这里附上可用的知识!
所以,问题是:
int i = 0;
int getNextInt(){
return i++;
}
就是这样。问题是如何在函数调用堆栈中实现++运算符,以及当我们在代码中调用该函数时实际发生的增量。
我真的很想知道很久!
答案 0 :(得分:2)
在函数返回值后发生。在这种情况下,它返回0然后递增变量,所以下次它将返回1
答案 1 :(得分:0)
我不知道编译器对堆栈实际做了什么,但是如果它选择了,编译器可以很容易地重新排列它:
int getNextInt() {
int temp = i;
i++;
return temp;
}
答案 2 :(得分:-1)
i++
与i = i+1
这只是重新定义变量的简便方法。