| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 461 人关注过本帖
标题:问个很菜鸟的问题啊,急!
只看楼主 加入收藏
tomywj
Rank: 2
等 级:论坛游民
帖 子:27
专家分:20
注 册:2010-7-20
结帖率:100%
收藏
已结贴  问题点数:5 回复次数:9 
问个很菜鸟的问题啊,急!
#include<stdio.h>
int main()
{
 int a=5,b;
 b=a+6-7&(a<7);
 printf("%d",b);
 getch();
 return 0;   
}
这个结果输出为什么是0呢? 谢谢!
2010-10-05 19:54
遮天云
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:农村一小伙
等 级:贵宾
威 望:12
帖 子:1132
专家分:2671
注 册:2010-6-1
收藏
得分:0 
很好理解!7&(a<7)表达式的值为真。值为1,所以为零
2010-10-05 20:01
vandychan
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
等 级:贵宾
威 望:18
帖 子:2296
专家分:6418
注 册:2010-8-20
收藏
得分:0 
遮天大哥比我还快 顶一下

到底是“出来混迟早要还”还是“杀人放火金腰带”?
2010-10-05 20:02
遮天云
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:农村一小伙
等 级:贵宾
威 望:12
帖 子:1132
专家分:2671
注 册:2010-6-1
收藏
得分:0 
以下是引用vandychan在2010-10-5 20:02:51的发言:

遮天大哥比我还快 顶一下
哈哈!不然一不小心被小弟先下手为强了
2010-10-05 20:04
tomywj
Rank: 2
等 级:论坛游民
帖 子:27
专家分:20
注 册:2010-7-20
收藏
得分:0 
是值为1啊,那5+6-1应该是10啊?!
2010-10-05 20:04
遮天云
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:农村一小伙
等 级:贵宾
威 望:12
帖 子:1132
专家分:2671
注 册:2010-6-1
收藏
得分:0 
汗!我说错了!那是按位与!我看成&&了!我在看看
2010-10-05 20:09
遮天云
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:农村一小伙
等 级:贵宾
威 望:12
帖 子:1132
专家分:2671
注 册:2010-6-1
收藏
得分:5 
知道了!是优先级问题!加减的优先级比&的优先级高!所以先执行a+6-7=4,4在和1按位于就是零了!如果想输出10的话应该这样b=a+6-(7&(a<7));
2010-10-05 20:16
tomywj
Rank: 2
等 级:论坛游民
帖 子:27
专家分:20
注 册:2010-7-20
收藏
得分:0 
多谢啊! 原来如此啊! 还是优先级的问题!
2010-10-05 20:17
遮天云
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:农村一小伙
等 级:贵宾
威 望:12
帖 子:1132
专家分:2671
注 册:2010-6-1
收藏
得分:0 
呵呵!不用客气!差点把我给整蒙了!一时没反应过来
2010-10-05 20:19
yszzql
Rank: 1
等 级:新手上路
帖 子:3
专家分:5
注 册:2008-4-6
收藏
得分:0 
这个是逻辑运算符为真是1为假时0啊
2010-10-05 22:37
快速回复:问个很菜鸟的问题啊,急!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.045189 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved