C语言中&是什么意思?a&b怎么理解?
&
在
C
语言中可能表示两种运算符。
如果运算对象只有一个,且为右操作数,那么
&
为取地址运算符,结果为操作对象的地址。例如
&a
(假设
a
是一个左值,即具有具体的可访问的地址)结果为
a
的地址。
如果运算对象有两个,那么
&
表示位与运算。结果中的每一个二进制位等于两个运算数的对应位置的二进制位按位与。每一个位的位与运算法则是,当且仅当运算数都为
1
时结果为
1
,即:
1 & 1 == 1
,
1 & 0 == 0 & 1 == 0 & 0 == 0
。
可以很好的用于解决算法中奇偶数问题
gets()函数会读取一行字符,直到遇到换行符'\n为止,并且这个换行符不会读取到数组中。