我有以下语句:
``` return *local_stack_var2++ + 42; ```
这是正确的步骤吗?
1. 解引用 `local_stack_var2`; 2. 将解引用后的 `local_stack_var2` 加上 42(函数将返回此值); 3. 在函数结束之前,会激活后置自增运算符,使 `local_stack_var2` 指向的对象的值增加。
因此,在代码格式中,它看起来像这样:
``` return *local_stack_var2++ + 42; ```
这是正确的步骤吗?
1. 解引用 `local_stack_var2`; 2. 将解引用后的 `local_stack_var2` 加上 42(函数将返回此值); 3. 在函数结束之前,会激活后置自增运算符,使 `local_stack_var2` 指向的对象的值增加。
因此,在代码格式中,它看起来像这样:
int temp = *local_stack_var2 //step 1;
int returnValue = temp + 42; //step 2, compiler will return THIS value
*local_stack_var2 = *local_stack_var2 + 1; //step 3
return returnValue;
谢谢!