C语言中&是什么意思
发布网友
发布时间:2022-04-24 13:59
我来回答
共5个回答
热心网友
时间:2023-10-15 11:01
&&是“与”运算,只有当两个操作数同时为真时,“与”运算的结果才是真;否则,都为假;eg:56&&105结果为真,用1表示;
&若出现在变量的前面,它是个地址符,就是取地址的意思;否则,若出现在两个操作数之间,则是位运算操作符;即将每个操作数转换成对应的二进制数,然后对每一位进行与运算;eg:21&13==10101&01101==00100
10101
01100
--------------
00100
热心网友
时间:2023-10-15 11:01
“&&”(逻辑与)是逻辑运算符。
“逻辑与”相当于生活中说的“并且”,就是两个条件都同时成立的情况下“逻辑与”的运算结果才为“真”。
“&”是位运算符。
与运算(&)
双目运算。二个位都置位(等于1)时,结果等于1,其它的结果都等于0。
1
&
1
==
1
1
&
0
==
0
0
&
1
==
0
0
&
0
==
0
与运算的一个用途是检查指定位是否置位(等于1)。例如一个BYTE里有标识位,要检查第4位是否置位,代码如下:
BYTE
b
=
50;
if
(
b
&
0x10
)
cout
<
<
"Bit
four
is
set
"
<
<
endl;
else
cout
<
<
"Bit
four
is
clear
"
<
<
endl;
上述代码可表示为:
00110010
-
b
&
00010000
-
&
0x10
----------------------------
00010000
-
result
可以看到第4位是置位了
热心网友
时间:2023-10-15 11:02
&&是关系运算,是双目运算符,就是运算符左右两边都需要表达式,&&在关系运算中表示“与”,比如
m
==
1
&&
n
==
2
m
==
1和n
==
2同时为真,表达式就为真,否则为假。
而&即是双目又是单目。
双目时表示“与”运算,比如
0xff
&
0xff
将两边数值按位求与,最后得出结果
单目是表示取地址,比如:
a
=
&b;
取b的地址放到a中。
热心网友
时间:2023-10-15 11:02
&&是逻辑与(相当于其他语言中的AND)
比如:
a&&b;
若a和b都为真,则a&&b才为真。否则有一个为假都为假。
&是按位与。如果两个相应的二进制数都为1,结果才为1,否则都为0。
0&0=0,0&1=0,1&1=1,1&0=0。
比如:
3&5=1
00000011(3)
00000101(5)
00000001(1)
热心网友
时间:2023-10-15 11:03
&是一个位运算符,就是将两个二进制的数逐位相与,就是都是1才是1,只要有一个为0则为0,结果是相与之后的结果。
&&是一个逻辑运算符,就是判断两个表达式的真假性,只有两个表达式同时为真才为真,有一个为假则为假,具有短路性质。