c语言中:a&2!=0怎么理解
1个回答
展开全部
运算符
&
是位运算符,表示将两个
操作数
对应位逐一进行
逻辑
与运算。
与的运算
规则
是只要两个
数中
有一个为0,则其逻辑与的结果就为0。
但
&
的操作对象一般为
二进制数
!例如:
int
a=135,b=43,c;
c=a&b;
则是拿
135
和
43
的二进制数
10000111
和
00101011
进行按位与运算
结果为
00000011
转化为十进制等于
3
所以
c=3
!=
是不等于的意思。
因此
a&2!=0
的意思就是
a
与
2
进行与运算的结果是否不等于
0
不过
程序
中几乎没有这样的
用法
,我怀疑楼主的原题是不是
a
&&
2!=0
&&
是逻辑运算符
x&&y
表示
x
与
y
两个都不为
0
表达式值为
1
,只要有一个为
0
表达式值为
0。
则
a&&2!=0
的意思就是
若
a
为
0
,则
a&&2
值为
0,表达式
a
&&
2!=0
的值为
0
若
a
不等于
0
,则
a&&2
值为
1
,表达式
a
&&
2!=0
的值为
1
&
是位运算符,表示将两个
操作数
对应位逐一进行
逻辑
与运算。
与的运算
规则
是只要两个
数中
有一个为0,则其逻辑与的结果就为0。
但
&
的操作对象一般为
二进制数
!例如:
int
a=135,b=43,c;
c=a&b;
则是拿
135
和
43
的二进制数
10000111
和
00101011
进行按位与运算
结果为
00000011
转化为十进制等于
3
所以
c=3
!=
是不等于的意思。
因此
a&2!=0
的意思就是
a
与
2
进行与运算的结果是否不等于
0
不过
程序
中几乎没有这样的
用法
,我怀疑楼主的原题是不是
a
&&
2!=0
&&
是逻辑运算符
x&&y
表示
x
与
y
两个都不为
0
表达式值为
1
,只要有一个为
0
表达式值为
0。
则
a&&2!=0
的意思就是
若
a
为
0
,则
a&&2
值为
0,表达式
a
&&
2!=0
的值为
0
若
a
不等于
0
,则
a&&2
值为
1
,表达式
a
&&
2!=0
的值为
1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询