Stream.readBytes()

De ArduWiki
Revisión del 18:28 6 may 2019 de Kike GL (Discusión | contribuciones) (Referencias)

(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar

Descripción

Lee caracteres desde el flujo de entrada, hacia el buffer especificado. La función termina si la longitud determinada se ha leído, o el tiempo de espera (ver Stream.setTimeout()) se ha agotado.

Sintaxis

objetoStream.readBytes(buffer, largo)

Parametros

objetoStream 
una instancia de una clase que hereda de Stream.
buffer
el búfer para almacenar los bytes en char* o byte*
largo
la cantidad máxima de bytes a leer (int)

Retorno

Devuelve el número de caracteres colocados en el búfer (int). Un 0 significa que no se encontró nada durante el tiempo de espera.

Advertencias

  • La longitud del buffer debe respetarse, de lo contrario se corre el riesgo de un "desbordamiento de buffer" que puede corromper el contenido la memoria de ejecución (SRAM).

Ejemplo

if (Serial.available()) {
  buffer[Serial.readBytes(buffer, sizeof(buffer) - 1)] = 0; // Colocar el terminador de cadenas de caracteres
  Serial.print(F("Mensaje recuperado: \""));
  Serial.print(buffer);
  Serial.println('\"');
}

Vea también


Referencias