32ビットの符号なし整数を逆にしようとしています。ゼロを1に、1を0にしたいのですが、何か問題があるようです。 入力:3 出力:4294967292 予想される出力:2147483648 int main() {
unsigned int n;
scanf("%u",&n);
n^=4294967295;
printf("%u",n);
re
私はC++を初めて使用しています。 s = 'ABC'
for i, char in enumerate(s):
for j in range(4):
if ord(char) >> 2*j & 0b11 == 3:
print(i, char, ord(char), j, ord(char) >> 2*j & 0b11)
返す: 2 C 67 0 3