社区
C语言
帖子详情
int a = 1, b =2, c = 3, d = 4; 表达式:a++ < b ? a : c < d ? --a : --d 的值
逗逗喵吧
2012-05-15 05:00:31
int a = 1, b =2, c = 3, d = 4;
表达式:a++ < b ? a : c < d ? --a : --d 的值为2,
但是我不知道它是怎么转变来的,它数据变化的流程是什么?
...全文
973
14
打赏
收藏
int a = 1, b =2, c = 3, d = 4; 表达式:a++ < b ? a : c < d ? --a : --d 的值
int a = 1, b =2, c = 3, d = 4; 表达式:a++ < b ? a : c < d ? --a : --d 的值为2, 但是我不知道它是怎么转变来的,它数据变化的流程是什么?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
玲仙
2012-05-16
打赏
举报
回复
看了就不曉得是做啥用的...
wizard_tiger
2012-05-16
打赏
举报
回复
[Quote=引用 6 楼 的回复:]
先计算 a++ < b 由于这时a=1,b=2; 执行a,而不执行c < d ? --a : --d,这时a=2;所以表达式 a++ < b ? a : c < d ? --a : --d的值为2;
[/Quote]
++
不过建议楼主尽量不要写这样的程序,这种程序的结果有时是跟据编译器而定的,不同的编译器会有不同的结果。
regainworld
2012-05-16
打赏
举报
回复
没有意义,程序写得越清晰越好
22too
2012-05-16
打赏
举报
回复
就知道是条件运算符!具体不懂了
youkuxiaobin
2012-05-15
打赏
举报
回复
表示对这种问题很有压力,不会啊
CMDZX
2012-05-15
打赏
举报
回复
[Quote=引用 6 楼 的回复:]
先计算 a++ < b 由于这时a=1,b=2; 执行a,而不执行c < d ? --a : --d,这时a=2;所以表达式 a++ < b ? a : c < d ? --a : --d的值为2;
[/Quote]
条件运算符不是右结合性的吗?
飞天御剑流
2012-05-15
打赏
举报
回复
[Quote=引用 3 楼 的回复:]
你还是蛋疼去吧,取决于编译器的解释顺序
[/Quote]
条件运算符是例外,它的子表达式的计算顺序和顺序点都是确定的。
小白晒太阳
2012-05-15
打赏
举报
回复
++[Quote=引用 6 楼 的回复:]
先计算 a++ < b 由于这时a=1,b=2; 执行a,而不执行c < d ? --a : --d,这时a=2;所以表达式 a++ < b ? a : c < d ? --a : --d的值为2;
[/Quote]
mzliming
2012-05-15
打赏
举报
回复
先计算 a++ < b 由于这时a=1,b=2; 执行a,而不执行c < d ? --a : --d,这时a=2;所以表达式 a++ < b ? a : c < d ? --a : --d的值为2;
笨笨周0915
2012-05-15
打赏
举报
回复
无聊的程序。。。。真正开发的时候 很少用到的。。。风格极差。。不提倡了。。
猪头小哥
2012-05-15
打赏
举报
回复
为什么不是从右边开始运算?
酱油党
2012-05-15
打赏
举报
回复
你还是蛋疼去吧,取决于编译器的解释顺序
W170532934
2012-05-15
打赏
举报
回复
先运算:a++<b :由于a=1,b=2,所以这个逻辑运算是true,选择第一个运算表达式:a。而这时候a=2
飞天御剑流
2012-05-15
打赏
举报
回复
a<b为真,然后a后加1,结果就是2了。
java运算符优先级
int
a = 5;
int
b = 4;
int
c = a
++
- --b *
++
a / b-- >>2 % a--
对运算符优先级的理解 所有的数学运算都认为从左向右运算的,java中大部分运算符也是从左向右结合的,只有单目运算符、赋
值
运算符和三目运算符是从右向左运算。 运算符优先级思维导图,其中括号里大写的数字代表优先级,数字从一到十五优先级逐渐降低,即数字一的优先级最高,以此类推。 图:运算符及其优先级 例题
int
a = 5;
int
b = 4;
int
c = a
++
- --b *
++
a / b-- >>2 % a-- 求c的
值
。 计算过程: 1、计算C的算术
表达式
中不含从右向左结合的运
c语言中a=6=2 4 对不对,若a为
int
型变量,则
表达式
(a=4*5,a*2),a+6的
值
为()答案是40 是不是答案错了 不是应该是26么...
若a为
int
型变量,则
表达式
(a=4*5,a*2),a+6的
值
为()答案是40 是不是答案错了 不是应该是26么以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!若a为
int
型变量,则
表达式
(a=4*5,a*2),a+6的
值
为()答案是40 是不是答案错了 不是应该是26么逗号
表达式
是依次运算,以最后一个
表达式
的
值
做为整个...
c语言中a*=2*a 1,c语言中
int
a=2;a+=a*=a-=a*=3;pr
int
f("%d",a);怎么做?详细过程
题目:c语言中
int
a=2;a+=a*=a-=a*=3;pr
int
f("%d",a);怎么做?详细过程解答:首先a赋
值
为2;然后计算a*=3,此时a为6;然后计算a-=6,此时a为0;然后计算a*=0,此时a为0;然后计算a+=0,此时a为0.最后输出a为0.另外,只有C语言的考试会编这样晦涩难懂易出错的语句,实际工作应用中请不要这么做.猜你喜欢:1.双绒毛膜囊双羊膜囊s是什么意思?胎芽是什么?...
java中5 的结果_【java中
表达式
10/4*5的结果为(B)。A.12.5B.10C.0.5D.12why6.设a=1,b=2,c=3计算
表达式
a+=c
++
/--b运行之后,a的
值
是(B)。A....
你想问什么?设a=1,b=2,c=3 计算
表达式
a+=c
++
/--b运行之后,a的
值
是4怎么获取的?我暂且当你问的是这个,如不是再追问。下面解答。这里有一个知识点,是说当一个变量自身进行相加,有几种方式,假设变量
int
i=0,要自增这个变量变为1有如下做法:i
++
++
ii+=1这三种区别很重要,这样就知道最后的结果。前两种都是要先在内存开辟一块新空间,先自身相加在返回新空间
值
,只是前置(就是加号...
c语言
int
x=3,C语言 设有
int
x=11,则表示式((x
++
)*1/3)的
值
是几,为啥子
C语言 设有
int
x=11,则表示式((x
++
)*1/3)的
值
是几,为啥子以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!C语言 设有
int
x=11,则表示式((x
++
)*1/3)的
值
是几,为啥子表示式的
值
为 3x
++
,x 先参与运算,再自加,所以 在表示式中,x
++
相当于1111 / 3 两数均为整数,结果...
C语言
70,040
社区成员
243,237
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章