jueves, 13 de agosto de 2020

ARDUINO - C - ¿Cómo convertir un String a un entero ó a un Float?

   La clase string dispone de las funciones toInt() y toFloat() que convierten, respectivamente, la cadena de texto a un número entero o flotante.

   Así, el código siguiente muestra la conversión de String a Int ...

#define DEBUG(a) Serial.println(a);
String var_Text = "-98765";


void setup() 
{
  Serial.begin(9600);
  long valor;
   valor = var_Text.toInt();
   DEBUG(valor);
}
 
void loop()
{
}

   Pero la conversión de String a Float sería la siguiente ...

#define DEBUG(a) Serial.println(a);
String var_Text = "-987.65"; 
void setup() 
{
  Serial.begin(9600);
  float valor;
   valor = var_Text.toFloat();
   DEBUG(valor);
}
 
void loop()
{
}

   La conversión a través de la clase String es una clase muy ligera para que no nos penalice su uso. Pero debemos de controlar que no existan caracteres no numéricos a la hora de convertir a entero o float para que no tengamos procesos no controlados.

   Existen otros métodos, pero de momento este es el que más uso.

No hay comentarios:

Publicar un comentario