| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 22578 人关注过本帖
标题:C语言中的"&"和"&&"有什么含义
只看楼主 加入收藏
sjf2000
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2009-7-29
结帖率:0
收藏
已结贴  问题点数:20 回复次数:9 
C语言中的"&"和"&&"有什么含义
C语言中的"&"和"&&"有什么含义?
printf("%d",(a=2)&&(b=-2))与printf("%d",(a=2)&(b=-2))的执行结果不同。


谢谢

[ 本帖最后由 sjf2000 于 2009-8-15 15:31 编辑 ]
搜索更多相关主题的帖子: C语言 含义 
2009-08-15 15:18
soky
Rank: 4
等 级:业余侠客
帖 子:126
专家分:228
注 册:2009-7-13
收藏
得分:2 
&是取地址符,
&&是and的意思,表达两者要同时符合条件
第一个输入是正确的,&&两边不相等,则输出0,相等就输出1.
第二个明显是scanf中使用的,输入不合法

[ 本帖最后由 soky 于 2009-8-15 15:43 编辑 ]
2009-08-15 15:41
sjf2000
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2009-7-29
收藏
得分:0 
以下是引用soky在2009-8-15 15:41的发言:第一个输入是正确的,&&两边不相等,则输出0,相等就输出1.






不是的吧,你运行看看!结果就是1
2009-08-15 16:15
okexit
Rank: 1
等 级:新手上路
帖 子:2
专家分:8
注 册:2009-2-13
收藏
得分:2 
printf("%d",(a=2)&&(b=-2));//"&&"结果为真,则逻辑结果为1(应该说非0)
printf("%d",(a=2)&(b=-2));//把左右两个数相与...   结果是2
2009-08-15 17:11
蘋什庅
Rank: 1
等 级:新手上路
帖 子:5
专家分:3
注 册:2009-4-4
收藏
得分:2 
& 按位 与
&& 与
2009-08-15 18:51
广陵绝唱
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:29
帖 子:3607
专家分:1709
注 册:2008-2-15
收藏
得分:2 
回复 2楼 soky


        1,& 可以是 取址符,也可以是 按位与 符;

        2,int a;printf("%d\n",(int)(&a));  您看看可不可以运行?
2009-08-15 19:20
hjxpengyou
Rank: 1
等 级:新手上路
帖 子:2
专家分:3
注 册:2009-8-15
收藏
得分:2 
printf("%d",(a=2)&&(b=-2))输出应该是1
printf("%d",(a=2)&(b=-2))即:00000010 & 11111110 ,输出结果应该为2,即00000010
&为取地址运算符和位与运算符,&&为双目逻辑运算符,如a&&b当a与b均为非零时结果为1,否则为零
不知我的解释够清楚不
2009-08-15 20:27
ljt0000mf
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:104
专家分:157
注 册:2009-7-4
收藏
得分:2 
恩,七楼正解
2009-08-15 20:34
明次
Rank: 5Rank: 5
来 自:China
等 级:职业侠客
帖 子:166
专家分:303
注 册:2009-1-11
收藏
得分:2 
&是取地址符,有时候是引用符。
&&是逻辑“和”也就是and意思。

、明次℡!           QQ:604622530
2009-08-16 13:30
de蓝天
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2017-5-23
收藏
得分:0 
回复 7楼 hjxpengyou
-2应该是10000010吧
2017-05-23 10:25
快速回复:C语言中的"&"和"&&"有什么含义
数据加载中...
 
   



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

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