永发信息网

c语言里,i++与++i的区别,最好举例说明

答案:3  悬赏:40  手机版
解决时间 2021-12-03 00:23
c语言里,i++与++i的区别,最好举例说明
最佳答案
    独立的i++与++i的效果是一样的,最后都使i的值增1。
    在表达式中i++取i的值参与运算,之后才执行++使i增1,而++i取i+1的值参与运算,就是说行执行++使i增1,再取i的新值参与运算。

把题面的代码printf("%d
",z);改成printf("%d %d
",z,i);,看看是不是i值比z大1?这就完全清楚了!

全部回答

i++ 和 ++i的基本功能是相同的,都是对变量i进行自增1运算,从功能上讲相当于i =i+1 ;

++运算符分为前缀++和后缀++,如i++中的++就是后缀运算符,++i中的就是前缀运算符,两个的区别在于:

前缀++,先使用变量,再进行变量自增1

后缀++,先进行变量自增1,再使用变量

现在分析你的代码:
i=1;
k=++i; //先加,后用,i=i+1=2 k=i=2
z=i++; //先用,后加,z=i=2, i=i+1=3
输出 
2
2
前置的++,是变量先自增1,然后再作其他操作,
后置的++,是先取变量当前的值操作,然后再自增1
你的例子中,i的初始值是1,执行k = ++i;时,先执行了 i = i + 1,也就是i的值变为2,再把i的值赋给k,所以k的值是2,i的值也是2
执行z = i ++;时,先取i的值赋给z,此时i的值是2,所以z也是2,然后再执行i= i + 1,这条语句执行完成后,i的值变为3
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
> 思域改灯改灯改灯,太暗确实受不了,求教改
交流电焊机功率 BX1-400是多少?
小型假山制作哪家好
万和强排燃气热水器,风机转但听不到打火声音
京张高铁上的复兴号将如何进行升级?
统筹城乡经济发展,建设现代农业,发展农村经
西安饿了么配送站在哪?具体分布一下,不止一
富马酸成半盐一个羧酸成盐一个羧酸怎么成
刘雅轩名字的含义
COCOKTV地址在什么地方,我要处理点事!
岁转一轮春夏秋冬上一句对什麼?
cf手游中信银行信用卡不是说16可以的吗
什么是商品生产过程中所消耗的生产资料转移价
凭什么男人为了追女人就得卑躬屈膝的最近
高通骁龙800与苹果A7处理器哪个好
推荐资讯
有没有人做过天星教育的押题卷
什么是坐席管理系统?
男的发了条心情,女的这样回复,男的再回复那
I was telling my boy Sonny the story of th
新买的电脑,华硕的N56VZ,在做ps、pr这方面
C语言中实现简单的功能用有参宏比用函数有什
惜爱瑜伽会馆(—东盟店)地址在什么地方,我要
押一付一是什么意思啊 假如我6.1开始签合同
4/5除以9/5除以5/4
周公解梦梦见自已揄钱被人追
又能组什么组词
请问这个酸奶根据它的营养成分表怎样算它有多
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?