预减法运算符

时间:2017-10-19 16:54:36

标签: c++ operators

我的问题与调用函数以及减少运算符有关。 以下代码的答案是 20 1 19 10 我的问题是," - m" m应该是19因此它应该发送19,最后19应该是打印输出 19 1 19 10 但是为什么即使有" - m"?

,我也不会改变
void f(int a, double b){cout<< a--<< '\t'<< b<< endl;}

int g(double x, int y){ return (x / ++y);}

int main()
{

int m = 20, n = 10;

f(m, g(--m, n));

cout<< m<< '\t'<< n << endl;

return 0;

}

1 个答案:

答案 0 :(得分:4)

这是未指明的行为。 C ++没有说明参数评估的顺序。