yt414204458 发表于 2008-9-7 10:39

&&这步是桌面计算的

main()
{ int a,b,d=25;
a=d/10%9;
b=a&&(-1);
printf("%d,%d\n",a,b);
}
答案是多少,b=a&&(-1);算完后b是多少?

StarWing83 发表于 2008-9-7 10:54

自己看书。谢谢。

死了都要C 发表于 2008-9-7 10:58

注意  对表达式计算的控制

yt414204458 发表于 2008-9-7 10:59

回复 2# StarWing83 的帖子

前面的a算下是2,b=a&&(-1);是2&&(-1),&&是逻辑与那答案不就是0了吗?我说的对吗?

StarWing83 发表于 2008-9-7 10:59

哦,答案是2,1

hundnn 发表于 2008-9-7 11:18

楼上正解。/


只要是非0就为真。/
2&&(-1)这个表达式值为真

yt414204458 发表于 2008-9-7 20:48

回复 6# hundnn 的帖子

2&&(-1)这个怎么会是真的呢?解释一下,2并且-1是真的?有这样的数吗?

woshiyun 发表于 2008-9-8 09:12

kao,一个个就是爱装腔作势,就是不正面回答别人的问题!!

LZ,2&&(-1)等价于(2!=0)&&((-1)!=0),所以值为真。

yt414204458 发表于 2008-9-10 13:16

回复 8# woshiyun 的帖子

谢谢你啊,原来是这么简单啊,呵呵

lingluoz 发表于 2008-9-10 14:13

应该是1

水上漂 发表于 2008-9-10 21:19

[tk05]

liuxingjiaofu 发表于 2008-9-11 10:59

看来就是2,1了

bossusa 发表于 2008-9-11 11:13

dingding

[quote][bo][un]StarWing83[/un] 在 2008-9-7 10:59 的发言:[/bo]

哦,答案是2,1 [/quote]

[tk02]
a = 2
b = 1

页: [1]

编程论坛