|
9#
楼主 |
发表于 2014-12-18 01:28:22
|
只看该作者
首先,&的语义是位与,对于二进制表示的每个位上面进行逻辑与操作,例如
char a, b;
a = 1, b = 0;
a & b首先要写出二进制表示
a 00000001
b 00000000
然后每个位上进行逻辑与
得到的结果就是
00000000
然后 a >= 1和a <= 9两个式子的值只能是1或0,穷举4种情况
左边 右边 & &&
0 1 0 0
1 0 0 0
1 1 1 1
0 0 0 0
所以在这里&和&&得出的值相等
在这里用&是个语义上的错误,按照小学应用题的标准来看,是不能算正确的
|
|