Diferencia entre revisiones de «Serial.parseFloat()»
De ArduWiki
(Página creada con «== Descripción == == Sintaxis == <pre> </pre> == Parametros == == Retorna == == Advertencias == Nada. == Ejemplo == <syntaxhighlight lang="c++"> </syntaxhighlight> =...») |
(→Ejemplo) |
||
(No se muestran 9 ediciones intermedias de 2 usuarios) | |||
Línea 1: | Línea 1: | ||
== Descripción == | == Descripción == | ||
+ | Busca el siguiente número punto flotante entre los datos entrantes, asumiendo que está codificado como texto y que el separador decimal es un punto ('.'). Se rige bajo las siguientes reglas: | ||
+ | |||
+ | * Los caracteres iniciales que no son dígitos o un signo menos, se saltan. | ||
+ | * El análisis se detiene cuando el tiempo de espera se agota, o se lee un caracter que no es dígito (excluyendo el ignorado y el punto si es el primer encuentro). | ||
+ | * Si no se leyeron dígitos válidos durante el tiempo de espera (vea [[Serial.setTimeout()]]), se devuelve '''0.0'''. | ||
== Sintaxis == | == Sintaxis == | ||
<pre> | <pre> | ||
+ | Serial.parseFloat(); | ||
+ | Serial.parseFloat(caracter); | ||
</pre> | </pre> | ||
− | == | + | == Parámetros == |
+ | ;caracter: caracter a ignorar una vez iniciado el proceso ([[char]]). | ||
== Retorna == | == Retorna == | ||
+ | Retorna un numero tipo [[float]], o '''0.0''' si no encuentra nada. | ||
== Advertencias == | == Advertencias == | ||
− | + | * Si de parámetro se introduce el símbolo de menos ('-'), el valor retornado nunca será negativo. | |
+ | * Si de parámetro se introduce el punto ('.'), la función fallará en reconocer las cifras decimales. | ||
+ | * Este parámetro es muy útil para ignorar coma (',') en números como: 10,000. | ||
+ | |||
+ | == Ejemplo 1 == | ||
+ | <syntaxhighlight lang="c++"> | ||
+ | 1.23 --> 1.23 | ||
+ | a1.23 --> 1.23 | ||
+ | 1.23a --> 1.23 | ||
+ | 1a2b3 --> 1.00, 2.00 y 3.00 | ||
+ | </syntaxhighlight> | ||
− | == Ejemplo == | + | == Ejemplo 2 == |
<syntaxhighlight lang="c++"> | <syntaxhighlight lang="c++"> | ||
+ | void setup(){ | ||
+ | Serial.begin(9600); | ||
+ | } | ||
+ | void loop(){ | ||
+ | if (Serial.available()){ | ||
+ | float num = Serial.parseFloat(); | ||
+ | Serial.println(num, 2); | ||
+ | } | ||
+ | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Vea también == | == Vea también == | ||
− | + | <categorytree mode=all>Serial</categorytree> | |
− | |||
− | |||
− | |||
== Referencias == | == Referencias == | ||
− | [[Category: | + | [[Category:Serial]] |
Revisión actual del 22:41 18 oct 2019
Contenido
Descripción
Busca el siguiente número punto flotante entre los datos entrantes, asumiendo que está codificado como texto y que el separador decimal es un punto ('.'). Se rige bajo las siguientes reglas:
- Los caracteres iniciales que no son dígitos o un signo menos, se saltan.
- El análisis se detiene cuando el tiempo de espera se agota, o se lee un caracter que no es dígito (excluyendo el ignorado y el punto si es el primer encuentro).
- Si no se leyeron dígitos válidos durante el tiempo de espera (vea Serial.setTimeout()), se devuelve 0.0.
Sintaxis
Serial.parseFloat(); Serial.parseFloat(caracter);
Parámetros
- caracter
- caracter a ignorar una vez iniciado el proceso (char).
Retorna
Retorna un numero tipo float, o 0.0 si no encuentra nada.
Advertencias
- Si de parámetro se introduce el símbolo de menos ('-'), el valor retornado nunca será negativo.
- Si de parámetro se introduce el punto ('.'), la función fallará en reconocer las cifras decimales.
- Este parámetro es muy útil para ignorar coma (',') en números como: 10,000.
Ejemplo 1
1.23 --> 1.23
a1.23 --> 1.23
1.23a --> 1.23
1a2b3 --> 1.00, 2.00 y 3.00
Ejemplo 2
void setup(){
Serial.begin(9600);
}
void loop(){
if (Serial.available()){
float num = Serial.parseFloat();
Serial.println(num, 2);
}
}
Vea también