鱼C论坛

 找回密码
 立即注册
查看: 3060|回复: 10

遇到难搞的 ++ -- 问题了。请帮我解答一下,谢谢

[复制链接]
发表于 2012-8-13 17:03:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 天长地久 于 2012-8-13 17:05 编辑
  1. #include <stdio.h>
  2. void main()
  3. {
  4.         int i = 8;
  5.         printf("%d\n",++i);     // 先8+1  再赋值给i     i=9
  6.         printf("%d\n",--i);      //   先9-1  再赋值给i     i=8
  7.         printf("%d\n",i++);    //   先赋值i=8   再i+1=9     i=9
  8.         printf("%d\n",i--);      //   先赋值i=9   再i-1=8      i=8
  9.         printf("%d\n",-i++);    //  这个没搞懂是什么意思  是-i   还是减i  
  10.         printf("%d\n",-i--);      //  这个没搞懂是什么意思  是-i   还是减i  


  11. }
复制代码


我的理解一定有问题。执行后结果不对!
谁能帮我解答解答。谢谢了!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-8-13 17:22:51 | 显示全部楼层
本帖最后由 骗子死全家 于 2012-8-13 17:48 编辑

9
8
8    i++  ;i=8  输出后才8+1   这时候 i 就等于9,
9      

- (8++) ; (i++)---- 输出 i=8;输出后i=9; 输出的 8跟负号结合 -8
  - (9--  ) ;    (i--)----  同理

结合方向是“自右到左”




想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-8-13 17:34:29 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-8-13 17:56:37 | 显示全部楼层
9
8
8    i++  ;i=8  输出后才8+1   这时候 i 就等于9,
9      

- (8++) ; (i++)---- 输出 i=8;输出后i=9; 输出的 8跟负号结合 -8
  - (9--  ) ;    (i--)----  同理

结合方向是“自右到左”


:lol:lol
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-8-13 18:33:50 | 显示全部楼层
骗子死全家 发表于 2012-8-13 17:56
9
8
8    i++  ;i=8  输出后才8+1   这时候 i 就等于9,

好像是看懂你的意思了。
i++  ;i=8  输出后才8+1   这时候 i 就等于9,.
就是说printf  先显示8   显示完后再8+1  
是这个意思吧!好像只有这样我才能想明白。呵呵!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-8-13 20:30:01 | 显示全部楼层
你看下反汇编就知道了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-8-13 22:53:22 | 显示全部楼层
wqlovt 发表于 2012-8-13 20:30
你看下反汇编就知道了

我是初学入门级的。我先学了甲鱼老师的汇编基础,会看点汇编码,但是VC++6.0怎么看反汇编码我还不知道怎么弄的!
高手赐教一下!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-8-14 12:19:18 | 显示全部楼层
表达式 4+5 的值是9
表达式 -5的值是-5
int i=8;
表达式 i++ 的值是8 执行完毕之后 i 的值是9
表达式 ++i 的值是9 执行完毕之后 i 的值是9

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-8-14 14:12:54 | 显示全部楼层
楼主你还是先说说你怎么理解的,你理解的结果是多少.这样才好说明.
我估计楼主是对运算符的先后顺序和变量的值 -i++后得负数, -i--还是负数这里理解不清楚不知道对不对
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-8-14 20:54:15 | 显示全部楼层
天长地久 发表于 2012-8-13 22:53
我是初学入门级的。我先学了甲鱼老师的汇编基础,会看点汇编码,但是VC++6.0怎么看反汇编码我还不知道怎么 ...

QQ截图20120814205505.png

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-8-14 23:16:45 | 显示全部楼层

原来是这样!谢谢!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-26 23:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表