Diferencia entre revisiones de «Stream.peek()»

De ArduWiki
Saltar a: navegación, buscar
(Vea también)
(Referencias)
 
(No se muestran 2 ediciones intermedias del mismo usuario)
Línea 28: Línea 28:
  
 
== Vea también ==
 
== Vea también ==
* [[Stream]]
+
<categorytree mode=all>Stream</categorytree>
* [[Stream.available()]]
 
* [[Stream.read()]]
 
* [[Stream.flush()]]
 
* [[Stream.find()]]
 
* [[Stream.findUntil()]]
 
  
== Referencias ==
+
== Referencias externas ==
  
[[Category:Funciones]]
+
[[Category:Stream]]

Revisión actual del 22:07 7 oct 2019

Descripción

Devuelve el siguiente byte (carácter) del flujo de entrada, sin descartar (flujos byte a byte) o avanzar (flujos por bloques). Es decir, las llamadas sucesivas a peek() devolverán el mismo carácter, al igual que la próxima llamada a Stream.read().

Sintaxis

objetoStream.peek();

Retorno

El valor recuperado, o -1 si no hay datos para leer (int).

Advertencias

  • Si por error no se verifica de antemano si hay datos disponibles, peek() retornará 255 para byte en el caso que el valor real sea -1 (nada).
  • Cualquier clase que herede de Stream, debe implementar obligatoria y explícitamente esta función. Debe hacerse de manera que cumpla lo descrito en la sección de Descripción y Retorno.

Ejemplo

void setup(){
   Serial.begin(9600);
}
void loop(){
   if (Serial.available()){
      byte car = Serial.peek();    //Lee caracter enviado y NO borra del buffer.
      Serial.write(car);           //Imprime siempre lo mismo
   }
}

Vea también


Referencias externas