Побитовый оператор AND: &
Синтаксис
and-expression
:
equality-expression
and-expression
&
equality-expression
Комментарии
Побитовый оператор AND (&
) сравнивает каждый бит первого операнда с соответствующим битом второго операнда. Если оба бита равны 1, соответствующий бит результата устанавливается равным единице. в противном случае — нулю.
Оба операнда для побитового оператора AND должны иметь целочисленные типы. Обычные арифметические преобразования, описанные в разделе Стандартные преобразования , применяются к операндам.
Оператор ключевое слово для&
C++ указывает bitand
в качестве альтернативного варианта правописания для &
. В C альтернативная орфография предоставляется в виде макроса в заголовке <iso646.h> . В C++ альтернативным написанием является ключевое слово; использование <iso646.h> или эквивалентного <C++ ciso646> является устаревшим. В Microsoft C++ для включения альтернативной /permissive-
орфографии требуется параметр компилятора или /Za
.
Пример
// expre_Bitwise_AND_Operator.cpp
// compile with: /EHsc
// Demonstrate bitwise AND
#include <iostream>
using namespace std;
int main() {
unsigned short a = 0xCCCC; // pattern 1100 ...
unsigned short b = 0xAAAA; // pattern 1010 ...
cout << hex << ( a & b ) << endl; // prints "8888", pattern 1000 ...
}
См. также раздел
Встроенные операторы C++, приоритет и ассоциативность
Побитовые операторы C