『Cプログラミングの落とし穴』(A.コーニグ, 1990)
[M1 Mac, Big Sur 11.6.8, clang 13.0.0, NO IDE]
ビット演算子&で計算してみました。各桁のビット同士で論理積を算出します。
10と12をビットAND計算すると8になります。
#include <cppstd.h>
int main() {
int x = 10;
int y = 12;
int z = 10 & 12;
bitset<8> x_bs(x);
bitset<8> y_bs(y);
bitset<8> z_bs(z);
cout << "x_bs = " << x_bs << endl;
cout << "y_bs = " << y_bs << endl;
cout << "z_bs = " << z_bs << endl;
cout << "z = " << z << endl;
return 0;
}
--------------------------------------------------
出力
--------------------------------------------------
x_bs = 00001010
y_bs = 00001100
z_bs = 00001000
z = 8