4

理解します

  11001110
& 10011000
= 10001000

しかし、私はそれを自分でテストしたい

unsigned char を宣言して出力しますが、空白になります。

unsigned char result;
result= 11001110 & 10011000;

cout<<result;

unsigned intでもテストしましたが、0が返されましたが、これは私が期待したものではありません

4

5 に答える 5

3

11001110であり10011000、2 進数ではありません (少なくともコンパイラの頭の中では)。

Binary 11001110is 206, and 10011000is 152, だからあなたは実際に欲しい(私は思う):

result = 206 & 152;

または astd::bitsetを使用して、結果をバイナリとして出力します。

于 2013-05-14T16:03:59.807 に答える
0

2 進数の 11001110 は、10 進数の同じ数ではありません。

c++ にはバイナリ指定子がありません (ただし、16 進数と 8 進数はあります) ため、オンライン コンバーターのようなものを使用する必要があります。

オンラインの 2 進数から 10 進数へのコンバーターを入手し、11001110 を 10 進数に変換し、10011000 を 10 進数に変換し、&演算を実行してから、結果を 10 進数から 2 進数に変換します。

于 2013-05-14T16:05:34.667 に答える