Bitwise AND Assignment Operator (&=)

Performs a bitwise AND on the value of a variable and the value of an expression and assigns the result to the variable.

result &= expression


  • result
    Any numeric variable.

  • expression
    Any numeric expression.


Using this operator is almost the same as specifying result = result & expression, except that result is only evaluated once.

The &= operator coerces the arguments to matching data types. Then the &= operator looks at the binary representation of the values of result and expression and does a bitwise AND operation on them.

The output of this operation behaves like this:

0101    (result)
1100    (expression)
0100    (output)

Any time both of the expressions have a 1 in a digit, the result has a 1 in that digit. Otherwise, the result has a 0 in that digit.


Version 1

See Also


Bitwise AND Operator (&)

Assignment Operator (=)


Operator Precedence

Operator Summary

Coercion By Bitwise Operators