关于p++先取值,再加1的有关问题
关于p++先取值,再加1的问题。
我知道p++出现在表达式中,是先取值,再加1,取的值是加1前的值。
那么我想问的是:函数中也是如此吗?比如
x = func(p++, n)
p++作为函数参数,这种情况下,也是先取值,再加1的吗?
------解决思路----------------------
对。

------解决思路----------------------
不知道为什么,这类问题好多人问呀
p++ 表达式展开就是豆号表达式: (tmp = p, p += 1, tmp)
最终返回值是 tmp
...
就算放到 函数里也是
func( (tmp = p, p += 1, tmp), n)
...
我知道p++出现在表达式中,是先取值,再加1,取的值是加1前的值。
那么我想问的是:函数中也是如此吗?比如
x = func(p++, n)
p++作为函数参数,这种情况下,也是先取值,再加1的吗?
------解决思路----------------------
对。
void foo(int p)
{
cout << p << endl;
}
int main()
{
int a = 10;
foo(a++);
cout << a << endl;
return 0;
}
------解决思路----------------------
不知道为什么,这类问题好多人问呀
p++ 表达式展开就是豆号表达式: (tmp = p, p += 1, tmp)
最终返回值是 tmp
...
就算放到 函数里也是
func( (tmp = p, p += 1, tmp), n)
...