理解します
11001110
& 10011000
= 10001000
しかし、私はそれを自分でテストしたい
unsigned char を宣言して出力しますが、空白になります。
unsigned char result;
result= 11001110 & 10011000;
cout<<result;
unsigned intでもテストしましたが、0が返されましたが、これは私が期待したものではありません
理解します
11001110
& 10011000
= 10001000
しかし、私はそれを自分でテストしたい
unsigned char を宣言して出力しますが、空白になります。
unsigned char result;
result= 11001110 & 10011000;
cout<<result;
unsigned intでもテストしましたが、0が返されましたが、これは私が期待したものではありません
11001110
であり10011000
、2 進数ではありません (少なくともコンパイラの頭の中では)。
Binary 11001110
is 206
, and 10011000
is 152
, だからあなたは実際に欲しい(私は思う):
result = 206 & 152;
または astd::bitset
を使用して、結果をバイナリとして出力します。
2 進数の 11001110 は、10 進数の同じ数ではありません。
c++ にはバイナリ指定子がありません (ただし、16 進数と 8 進数はあります) ため、オンライン コンバーターのようなものを使用する必要があります。
オンラインの 2 進数から 10 進数へのコンバーターを入手し、11001110 を 10 進数に変換し、10011000 を 10 進数に変換し、&
演算を実行してから、結果を 10 進数から 2 進数に変換します。