Diferencia entre revisiones de «double»

De ArduWiki
Saltar a: navegación, buscar
(Unas cuantas correcciones)
(Referencias)
 
(No se muestran 3 ediciones intermedias del mismo usuario)
Línea 13: Línea 13:
 
== Advertencias ==
 
== Advertencias ==
 
* En Arduinos con ATmega (AVR en general), '''double''' ocupa 4 bytes (32 bits); por lo que es igual a [[float]] y no hay ganancia en precisión.
 
* En Arduinos con ATmega (AVR en general), '''double''' ocupa 4 bytes (32 bits); por lo que es igual a [[float]] y no hay ganancia en precisión.
* Para el resto, '''double''' ocupa 8 bytes (64 bits); por lo tanto sí mejora la precisión.
+
* En Arduino [[DUE]], '''double''' ocupa 8 bytes (64 bits); por lo tanto sí mejora la precisión.
  
== Ejemplo ==
+
== Ejemplo 1 ==
 
<pre>
 
<pre>
 
double areaCirculo = PI * sq(r); // Pi * r^2, r: radio del círculo
 
double areaCirculo = PI * sq(r); // Pi * r^2, r: radio del círculo
 
double pruebaDecimales = 1.234567890123456789; // ¿Podrá almacenar tantos dígitos decimales?
 
double pruebaDecimales = 1.234567890123456789; // ¿Podrá almacenar tantos dígitos decimales?
 
</pre>
 
</pre>
 +
 +
== Ejemplo 2 ==
 +
Si tienes un [[float]] o un '''double''' puedes especificar el numero de decimales.
 +
 +
<syntaxhighlight lang="c++">
 +
Serial.print(PI, 2);    //3.14
 +
Serial.println(PI, 6);  //3.141593
 +
</syntaxhighlight>
  
 
== Vea también ==
 
== Vea también ==
* [[byte]]
+
<categorytree mode=all>Tipo dato</categorytree>
* [[int]]
 
* [[long]]
 
* [[float]]
 
* [[unsigned int]]
 
* [[word]]
 
* [[unsigned long]]
 
  
 
== Referencias ==
 
== Referencias ==
  
[[Category:Variables]]
+
[[Category:Tipo dato]]

Revisión actual del 14:41 6 may 2019

Descripción

Número de punto flotante de doble precisión (respecto a float).

Sintaxis

double variable [= valor];

Parámetros

variable
variable a definir
valor
valor a asignar

Advertencias

  • En Arduinos con ATmega (AVR en general), double ocupa 4 bytes (32 bits); por lo que es igual a float y no hay ganancia en precisión.
  • En Arduino DUE, double ocupa 8 bytes (64 bits); por lo tanto sí mejora la precisión.

Ejemplo 1

double areaCirculo = PI * sq(r); // Pi * r^2, r: radio del círculo
double pruebaDecimales = 1.234567890123456789; // ¿Podrá almacenar tantos dígitos decimales?

Ejemplo 2

Si tienes un float o un double puedes especificar el numero de decimales.

Serial.print(PI, 2);     //3.14
Serial.println(PI, 6);   //3.141593

Vea también

  bool
  byte
  char
  int
  long
  void
  word


Referencias