ステートメントの「&」はどういう意味ですか?[複製]

Aug 18 2020
bool ok =true;
ok &= (a[i] - a[i - 1] <= 1);

1.このコードの「&」はどういう意味ですか?2.変数の割り当てですか?

回答

1 RemyLebeau Aug 18 2020 at 16:31

このコンテキストで&=は、はビット単位のAND代入演算子です。左側の変数の値(ok)は、右側の式の値()とAND演算され(a[i] - a[i - 1] <= 1)、結果が左側の変数に割り当てられます。