永发信息网

如果int i=3 则printf("%d",-i++)执行后输出是( )i的结果是 ( ) 答案是-3 4 求解释

答案:4  悬赏:10  手机版
解决时间 2021-02-12 22:46
如果int i=3 则printf("%d",-i++)执行后输出是( )i的结果是 ( ) 答案是-3 4 求解释
最佳答案
首先来说 ++ 的优先级比 - 高 所以要先执行++ ++i 忽然i++ 的据别就是 ++i是 i自身先加1 然后在运算 i++ 就是先运算 然后i自身在加1 所以这道题可以理解成这样 -(i++) i++ =3 前面有 - 所以等式结果就是 -3 i的结果是4
全部回答
根据结果,可以解释,有一种可能是,c语言在计算函数参数时是从右往左计算(这种可能在某些语言中确实存在,在tc或者vc的编译器下是否这样我就不清楚了),这样计算的话,就是先计算i++得到4,而且i++的加号在后面,所以代入函数参数的实际上就是自增之前的i,所以i++这个位置,就带入3,然后在计算前面一个参数i,这个时候i已经是4了,所以就是4,3 当然,也有可能存在其他情况,所以任何一个大公司,任何一个好老师都会给你说,尽量不要这样在函数参数里面对参数本身的取值进行修改
i++和++i的区别。都使自身加1,i++先赋值再自加,所以打印时是3,前面有个负号,我没这么写过,也不知道行不行。执行完这句话后i变成4.
首先输出的就是 -i就是-3啦 可是这个-是不改变I的值的 它还是3 接着i自加 变成4
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
北汽幻速龙南县直营店地址在什么地方,我要处
小米产于我国南方还是北方?具体在什么省份?
库拉索芦荟多少钱一株
谢村乡邮政所地址有知道的么?有点事想过去
毛坯英语怎么说
黄陂区交通大队队长
赣州宝骏汽车销售服务有限公司龙南分公司地址
佰丽舞蹈、跆拳道会馆地址在什么地方,想过去
蚯蚓的身体都是由许多彼此相似的体节构成的,
戒指上得au750 15周大生是什么意思
多长时间抽一根烟,生的孩子才没有影响?{别说
云南最富裕的县是哪个县?
从深圳到佛山要多久
御龙在天白金版什么时候开放?
没有技术在深圳做什么工作好?
推荐资讯
如果小丽向东走30米,记作+30米,那么-40米
如何去广州白云机场
泗水县实验中学地址在什么地方,我要处理点事
想买一台华为平板电脑。要去哪里买才能有百分
什么是环境荷尔蒙
计算(1x2x3+3x6x9+5x10x15+7x14x21)÷(1
和合腰子配方现在哪有
我一个月用电6万度,工业用电,现装250还是31
关于目前我国手术分级标准,正确的是()。
农村信用社农商银行atm怎么去啊,我要去那办
摩羯男说和我在一起很紧张什么意思
西塘冲怎么去啊,有知道地址的么
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?