Estes operadores podem ser usados dentro da condição em uma sentença if.

&& ("E" lógico)

Verdadeiro apenas se os dois operandos forem verdadeiros, ou seja a primeira condição "e" a segunda forem verdadeiras, e.g.

if (digitalRead(2) == 1  && digitalRead(3) == 1) { // ler dois interruptores 
// ...
}

é verdadeiro apenas se os dois interruptores estiverem fechados.

 

|| ("OU" lógico)

Verdadeiro se algum dos operandos for verdadeiro, ou seja se a primeira "ou" a segunda condição for verdadeira e.g.

if (x > 0 || y > 0) {
// ...
}

é verdadeiro apenas se x ou y forem maiores que 0.

! (negação)

Verdadeiro apenas se o operando for falso e.g.

if (!x) { 
// ...
}

é verdadeiro apenas se x for falso (i.e. se x for igual a 0).

Cuidado

Certifique-se de não confundir o operador booleano "E" representado por "&&" e o operador lógico de bits "E" representado apenas por "&". Eles são animais completamente diferentes.

Do mesmo modo não confunda o booleano "OU" representado por "||" e o operador lógico de bits "|".

O operador lógico de bits "NÃO" representado por um "~" não se parece com o operador booleano "!", mas mesmo assim tenha certeza de estar usando o que você deseja.

Exemplos

if (a >= 10 && a <= 20){}   // verdadeiro se a estiver entre 10 e 20

Veja também

  • & (operador lógico de bits E)
  • | (operador lógico de bits OU)
  • ~ (operador lógico de bits NÃO)
  • if

 

Página de início da referência

Correções, sugestões, e nova documentação devem ser enviadas ao Forum.

O texto de referência do Arduino está baixo uma Licença Creative Commons Attribution-ShareAlike 3.0. Amostras de código utilizadas na referência foram deixados  ao domínio público.

 

O conteúdo desta página é uma tradução para o português a partir do site original do Arduino.

Esta obra está sob uma Licença Creative Commons.

Creative Commons License