c语言自增2怎么表示自减

请帮忙解释一下都会输出什么求详细解答。... 请帮忙解释一下都会输出什么

前缀加/减 与 后缀加/减 的不同 -- 在于表达式 里 的 值。

表达式 里 前缀加 要先自增, 后使用

表达式 里, 前缀减 要先自减 后使用。

表达式 里 后缀加 要先使用原值。出了表达式后 再自增

表达式 里, 后缀减 要先使用原值出了表达式後 再自减。

我在vc6·0上编写了一下 这是截图

首先是前两个7 因为i++是先赋值在进行加一运算++i是先加一然后再进行赋值操作,所以ab中储存着值昰7,此时i的值是8

然后是后面两个7同理 a为7,b为7此时i为6

同理,-i++中因为++在后面 所以先输出-6然后在把i加一 这是i变成了7


 第一行 i为6 a和b是垃圾值。
苐二行a赋予i自增以后的副本aa为7,而i为7b被赋给i的副本,b为7然后i又自增,i为8
打印出来a就是7 b是7 这个时候i是为8的
然后a被赋予i自减以后的副本就是7,而i这时候为7b又被赋予i的副本为7,然后i又自减为6
再次打印,a为7b为7,这时候i为6
下面根据优先级i++先算那么,i++表达式的值为i的副夲那么就是6,然后负号表达式就是-6这个-6传给printf,打印出-6同时i也自减了,这个时候i为5
再次打印,i为5
解释得很清楚哈 O(∩_∩)O谢谢~
不过最後一行的输出不对~

下载百度知道APP,抢鲜体验

使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的***

c语言自增2怎么表示与自减运算符:a++++a,a----a的区别

  1. 1.++a,--a先运算后取值;a++,a--先取值后运算2.表达式执行完后计算结果保存

  2. 第一个输出:++a=102(前面的a运算后为101,再运算后为102取值)

    第三个輸出:a--=102(a先取102,再减等于101)

    第四个输出:--a=100(前面的a运算后为101,再运算后为100,取值)

  • 无论是a++还是++a都等同于a=a+1,在表达式执行完毕后a的值都自增了1,无论是a--还昰--a都等同于a=a-1,在表达式执行完毕后a的值都自减少1

经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域)建议您详细咨询相关領域专业人士。

作者声明:本篇经验系本人依照真实经历原创未经许可,谢绝转载

参考资料

 

随机推荐