Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
C++ で |= を理解しようとしています。サンプル コードがあります。
int x = 0 ; x |= 3; std::cout<<x <<std::endl; x |= 6; std::cout<<x <<std::endl;
出力は次のとおりです。
3 7
これはどのように可能ですか、それはビット追加に関連していますか??
これは、ビットごとの or and 代入です。x = x | と同じです。3.
バイナリビット単位または「どちらかの数値が 1 の場合、結果は 1 になります」と同等です。したがって、x |= 3 は 3 になります。x は 2 進数で 11、6 は 2 進数で 110 なので、11 |= 3 になります。101 = 111 (バイナリ) = 7 (10 進数)。
x |= 3
意味
x = x |3
ビット単位または演算。