O que significa '&' na declaração? [duplicado]

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

1. o que significa o "&" neste código? 2. É atribuição de alguma variável?

Respostas

1 RemyLebeau Aug 18 2020 at 16:31

Nesse contexto, &=é o operador de atribuição AND bit a bit . O valor da variável no lado esquerdo ( ok) é AND'ed com o valor da expressão no lado direito ( (a[i] - a[i - 1] <= 1)), e o resultado é então atribuído de volta à variável do lado esquerdo.