Diferencia entre revisiones de «Stream.readString()»

De ArduWiki
Saltar a: navegación, buscar
(Vea también)
(Referencias)
 
Línea 30: Línea 30:
 
== Referencias ==
 
== Referencias ==
  
[[Category:Funciones]]
+
[[Category:Stream]]

Revisión actual del 14:31 6 may 2019

Descripción

Lee caracteres y los coloca en un String. La función finaliza cuando el tiempo de espera (ver Stream.setTimeout()) se ha agotado.

Sintaxis

objetoStream.readString();

Parámetros

objetoStream
nombre de la instancia de la clase Stream.

Retorna

El objeto String resultante de la lectura.

Advertencias

  • Hay un "bug" o fallo con esta función: si el flujo de entrada es constante (tiempo de espera nunca se agota) o lo suficientemente grande, se corre el riesgo de colgar completamente el programa. La razón se debe a que, conceptualmente, String es ilimitado en tamaño; pero como la SRAM no es así, eventualmente el programa llegará a colapsar.

Ejemplo

if (Serial.available()) {
  Serial.print(F("Mensaje recuperado: \""));
  Serial.print(Serial.readString()); // Ojo con el tamaño, que puede que de aquí no pase u ocurra comportamiento indefinido.
  Serial.println('\"');
}

Vea también


Referencias