| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 422 人关注过本帖
标题:关于&&与||
只看楼主 加入收藏
boris250
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2007-9-11
收藏
 问题点数:0 回复次数:3 
关于&&与||

在C++中,&&与||在运算时优先级应该为同一级别,但是在进行表达示“3<x<5 ||y>3 && y<2”运算时得到值为1;如果“(3<x<5 ||y>3) && y<2”时却为0,请教高手。

2007-09-12 16:21
雨中飞燕
Rank: 3Rank: 3
等 级:禁止访问
威 望:8
帖 子:2200
专家分:0
注 册:2007-8-9
收藏
得分:0 
错,级别不一样,书上应该有讲
&&的优先级高!



by 雨中飞燕 QQ:78803110 QQ讨论群:5305909

[url=http://bbs.bc-cn.net/viewthread.php?tid=163571]请大家不要用TC来学习C语言,点击此处查看原因[/url]
[url=http://bbs.bc-cn.net/viewthread.php?tid=162918]C++编写的Windows界面游戏[/url]
[url=http://yzfy.org/]C/C++算法习题(OnlineJudge):[/url] http://yzfy.org/
2007-09-12 16:25
snakeImao
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-9-10
收藏
得分:0 
课本是&&优先级高。
不好意思,开始理解错了!
3<x<5 是合法的C++表达式.但它是表示(3<x)<5.由于(3<x)是一个布尔表达式,所以它的值要么为true,要么为false,最后都会转换成 1 或 0 .因此,不管 x 的值是什么, 3<x<5 肯定为true( 1 和 0 都小于 5 ). 而 y>3 && y<2 不管 y 的值是什么,都为false ,所以“3<x<5 ||y>3 && y<2”为true ,即输出 1.

同理 “(3<x<5 ||y>3) && y<2” 可能为true,也可能为false .

[此贴子已经被作者于2007-9-13 15:50:20编辑过]

2007-09-12 17:39
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
x,y初值都没有,怎么来的结果

倚天照海花无数,流水高山心自知。
2007-09-12 21:02
快速回复:关于&&与||
数据加载中...
 
   



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

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