c语言中sum+=++i;是是什么意思?

不畏将来 2024-05-03 10:22:16
最佳回答
像这种问题,如果熟悉汇编就很好解释sum+=++i虽然下面几楼说得没错,等效i=i+1;sum=sum+i;但是这只是其中一种简单情况,试想sum+=i+i++;和sum+=++i+i++;这种情况,不同编译器甚至输出结果不一样,但无论结果多少,如果懂汇编就很好解释,就你这题而言,打开编译器的反汇编,可以看到编译后的结果为8: sum+=++i;00401036 mov eax,dword [ebp-8]00401039 add eax,10040103c mov dword [ebp-8],eax0040103f mov ecx,dword [ebp-4]00401042 add ecx,dword ptr [ebp-8]00401045 mov dword ptr [ebp-4],ecx其中,dword ptr [ebp-8]是存放在堆栈中的局部变量i,而dword ptr [ebp-4]是存放在堆栈中的局部变量sum这样,前3行就是eax=i;eax=i+1; i=eax;也就是i=i+1而后3行就是ecx=sum;ecx=i+sum;sum=ecx,不正是sum=sum+i吗?建议看看汇编的东西,这样可以解释很多无法解释的问题 20210311
汇率兑换计算器

类似问答
  • i thoug ht youalways bemine 汉语是什么意思?
    • 2024-05-03 04:32:36
    • 提问者: 未知
    我相信不是楼主写的。正确的是i thought you were always mine.i thought用过去式,表示原以为,其实现实和想法不一样。我原以为你一直都是我的。
  • c语言中 b
    • 2024-05-03 12:45:23
    • 提问者: 未知
    b<a?a:c等价于 b(c),先计算括号里面的。规则是,问号前面的表达式成立,结果就是冒号前面的值,否则就是冒号后面的值
  • 请问在单片机c语言中tmod=0x00是什么意思?那个0x00又是怎么回事?谢谢
    • 2024-05-03 13:48:09
    • 提问者: 未知
    tmod=0x00:t1和t0都工作于方式0。具体的是否打开t1和t0,或打开其中某一个,要看后面的设置。这种方式适用于以前13位计数的单片机,现在没人用了,除非是只看书的教授。
  • c语言中的datatype是什么
    • 2024-05-03 02:32:30
    • 提问者: 未知
    datatype是数据类型。c的数据类型包括:整型、字符e69da5e887aa62616964757a686964616f31333431373236型、实型或浮点型(单精度和双精度)、枚举类型、数组类型、结构体类型、共用体类型、指针类型和空类型。数据类型**: 1、short:修饰int,短整型数据,可省略被修饰的int。(k&r时期...
  • 汇编语言中ea是什么意思?
    • 2024-05-03 06:00:55
    • 提问者: 未知
    汇编语言中ea是什么意思?汇编语言中ea是总中断控制位。在单片机中断控制系统中,有中断功能的外设,有自己的中断控制位,我们可以把它叫做分中断控制位,该位可以允?
  • c语言%.3f是什么意思?
    • 2024-05-03 20:52:12
    • 提问者: 未知
    小数留三位小数
  • 网络语言11是什么意思
    • 2024-05-03 01:19:21
    • 提问者: 未知
    在节日中:2113“11”指“11月11日”,为“棍节”。在篮球中:“5261410211”是姚明在nba的球衣号。在足球中:“11”是一个足1653球队的人数。网络文化:“11”号公共汽车:比喻用双脚步行。象征排列,每月11日,不少地方作为排队日。扩展资料十一是一个中文数字,**伯数字表示11,英文 为...
  • c语言基础题 以下合法的c语言赋值语句是 a.a=b=58 b.k=int(a+b) c.a=58,b=58 d.--i
    • 2024-05-03 13:29:10
    • 提问者: 未知
    a 语法错误:不能连续赋值. b 强制类型转换运算符必须用小括号括起来 比如(int)(a+b). c 不是语句,只是表达式,要用分号才正确. d 是自减语句,等同i=i-1. 正确的确是d.
  • 股票**语言783是什么意思
    • 2024-05-03 13:29:49
    • 提问者: 未知
    股票代码。
  • ces't la vi是什么意思?哪国语言?
    • 2024-05-03 21:08:03
    • 提问者: 未知
    “c’est la vie”意思是“这就是人生”,是法文,翻译成英文是 it ** life。歌曲下载:歌词-歌曲:c'est la vie(这就是生活)歌手:梁静茹 作词:黄婷 作曲:易桀齐/伍冠谚 ne ...
汇率兑换计算器

热门推荐
热门问答
最新问答
推荐问答
新手帮助
常见问题
房贷计算器-九子财经 | 备案号: 桂ICP备19010581号-1 商务联系 企鹅:2790-680461

特别声明:本网为公益网站,人人都可发布,所有内容为会员自行上传发布",本站不承担任何法律责任,如内容有该作者著作权或违规内容,请联系我们清空删除。