Bitowy operator AND: &
expression & expression
Uwagi
Wyrażenia mogą być innymi wyrażeniami "and" lub wyrażeniami równości (z zastrzeżeniem typów ograniczeń wymienionych poniżej), wyrażeniami relacyjnymi, dodatkowymi wyrażeniami, wyrażeniami mnożnymi, wskaźnikiem do wyrażeń elementów członkowskich, wyrażeniami rzutowania, jednoargumentowymi wyrażeniami, wyrażeniami przyrostków lub wyrażeniami podstawowymi.
Operator bitowy AND (&) porównuje każdy bit pierwszego operandu z odpowiadającym bitem drugiego operandu.Jeśli oba bity są równe 1, odpowiadający im bit wyniku będzie równy 1.W przeciwnym razie odpowiadający im bit wyniku będzie równy 0.
Oba operandy bitowe operatora AND muszą być typu zintegrowanego.Zwykle konwersje arytmetyczne objęte w Arytmetyczne konwersje są stosowane do operatorów.
Słowo kluczowe operatora &
Operator bitand jest równoważny &.Istnieją dwa sposoby dostępu operatora bitand w programach: dołączanie pliku nagłówka iso646.hlub kompilowanie z opcją kompilatora /Za (wyłącz rozszerzenia języka).
Przykład
// expre_Bitwise_AND_Operator.cpp
// compile with: /EHsc
// Demonstrate bitwise AND
#include <iostream>
using namespace std;
int main() {
unsigned short a = 0xFFFF; // pattern 1111 ...
unsigned short b = 0xAAAA; // pattern 1010 ...
cout << hex << ( a & b ) << endl; // prints "aaaa", pattern 1010 ...
}