C语言…谁帮忙解释一下…

来源:百度知道 编辑:UC知道 时间:2024/06/24 15:29:48
i=3;
printf("%d,%d",i,-i++);
结果是什么啊,怎么算的?
谢谢!

结果是:3,-3
对于表达式:-i++;因为运算符‘++’的优先级比‘-’高,所以先运算i++,再对结果取负;而对于i++,因为是后缀表示法,所以先在表达式中使用i的值,在将i的值增1 。
所以 -i++ 运算的运算顺序是:先使用i的值,在对i去负,然后输出所得结果,最后i的值增1(注意:并不是i的值增1后在输出)!!
一般好的程序员是不会编写这些很容易让人混淆的表达式的,所以不必在在意这样的表达式!!

3,-3.