true / false

De ArduWiki
Revisión del 15:58 4 feb 2019 de Kike GL (Discusión | contribuciones) (Ejemplo 2)

Saltar a: navegación, buscar

Descripción

Son palabras reservadas (incluso del lenguaje de programación en el que se basa Arduino: C++) que sirven como los posibles valores para crear variables del tipo bool.

A diferencia de otros lenguajes, es válido utilizarlos incluso para la asignación de variables número entero; ya que equivalen (respectivamente) a 1 y 0.

'true (verdadero) comunmente se define como 1, lo cual es correcto, pero true tiene una definicion mas amplia. Cualquier entero que no es cero es true, en el sentido Booleano. Asi que -1, 2 y -200 son todos definidos como true, tambien, en un sentido Booleano.

Sintaxis

true
false

Advertencias

  • Nota que true y false se deben escribir en minusculas.
  • Son sinónimos de false un 0 o la palabra reservada LOW.
  • Son sinónimos de true cualquier numero distinto de 0 y la palabra reservada HIGH.

Ejemplos

bool estado = true;
bool residuo = numero%5;
bool led = LOW;

Ejemplo 1

Debido a que Print ("padre" de Stream, y por ende de clases como Serial) no implementa una manera específica de lidiar con bool, ni siquiera en el monitor serial aparecería directamente "true" o "false":

bool b = false;
Serial.println(b); // Sólo aparecerá "0"
b = true;
Serial.println(b); // Sólo aparecerá "1"

Ejemplo 2

Debido a la naturaleza del tipo de dato bool se puede negar.

bool x = false;
Serial.println(x);   //Sólo aparecerá "0"
Serial.println(!x);  //Sólo aparecerá "1"

Ejemplo 3

Nota que en el if() no es necesario comparar.

void setup(){
   pinMode(13, OUTPUT);
}
void loop(){
   if (digitalRead(13)){
      digitalWhirte(13, !digitalRead(13));
      delay(500);
   }
}

Vea también

Referencias externas