设变量已正确定义为整型,则表达式n=i=2,++i,i++的值为___?

2024-12-03 15:42:34
推荐回答(5个)
回答1:

按优先级和结合律 原表达式相当于 ((n=(i=2)),++i),i++
要注意赋值表达式的值是左边操作数的值,逗号表达式是右边操作数的值
所以该表达式是i++的值 i++是先得出i的值再+1的 所以就是求前面i的值 很明显通过前面计算i=3了
即表达式的值应该也为3吧。 不过有些编译器也可能输出4 这样的表达式很没意义

回答2:

n和i都是2
++i 就是先给 i 加个1;然后在使用 I i=3
i++就是先使用 i ;在加 1 i=4

回答3:

int n, i, temp;
n=i=2;
temp = ++i; // temp = 3, i = 3
temp = i++; // temp = 3;
// i = 4

回答4:

没看明白你问题的意思,不过
++
在变量前面和在后面的优先等级是不一样的。

回答5:

n=2,i=3;