Diferencia entre revisiones de «decremento»

De ArduWiki
Saltar a: navegación, buscar
m (Advertencias)
(Vea también)
 
(No se muestran 12 ediciones intermedias del mismo usuario)
Línea 1: Línea 1:
 
== Descripción ==
 
== Descripción ==
 
Decrementa en uno la variable dada.
 
Decrementa en uno la variable dada.
 +
 +
{{Nota|Es lo mismo que variable <nowiki>=</nowiki> variable - 1.}}
  
 
== Sintaxis ==
 
== Sintaxis ==
 
<pre>
 
<pre>
variable--
+
variable--;
 +
--variable;
 +
variable = variable - 1;
 
</pre>
 
</pre>
  
 
== Retorno ==
 
== Retorno ==
 
Valor de la variable disminuido en uno.
 
Valor de la variable disminuido en uno.
 +
 +
== Comentarios ==
 +
* Cual es la diferencia entre poner el operador delante o atrás de nombre de la variable ?
  
 
== Advertencias ==
 
== Advertencias ==
 
* El riesgo del desbordamiento (ir más allá de lo que una variable puede almacenar, su rango de valores) sigue estando presente. En este caso sería volver a su valor máximo o pasar a un número positivo.
 
* El riesgo del desbordamiento (ir más allá de lo que una variable puede almacenar, su rango de valores) sigue estando presente. En este caso sería volver a su valor máximo o pasar a un número positivo.
  
== Ejemplo ==
+
== Ejemplo 1 ==
 +
Desbordamos el byte.
 
<syntaxhighlight lang="c++">
 
<syntaxhighlight lang="c++">
if (byte n=9; n>=0; n--){
+
byte n = 1;
  //Repite 10 veces.
+
n--;  //0
 +
n--;  //255
 +
n--;  //254
 +
</syntaxhighlight>
 +
 
 +
== Ejemplo 2 ==
 +
Nota la diferencia de poner delante o detras.
 +
<syntaxhighlight lang="c++">
 +
byte x = 2;
 +
y = --x;  //x=1  y=1
 +
y = x--;  //x=0  y=1
 +
</syntaxhighlight>
 +
 
 +
== Ejemplo 3 ==
 +
Es muy comun usarlo en un [[for]] para hacer cuanta descendente.
 +
<syntaxhighlight lang="c++">
 +
void setup(){
 +
}
 +
void loop(){
 +
  for (byte n=9; n>=0; n--){
 +
      //Repite 10 veces.
 +
  }
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
== Vea también ==
 
== Vea también ==
* [[incremento]]
+
<categorytree mode=all>Operador aritmetico</categorytree>
* [[suma compuesta]]
+
<categorytree mode=all>Operador aritmetico compuesto</categorytree>
* [[resta compuesta]]
+
<categorytree mode=all>Operador logico</categorytree>
* [[multiplicacion compuesta]]
 
* [[division compuesta]]
 
* [[modulo compuesto]]
 
* [[or bit a bit compuesto]]
 
  
 
== Referencias ==
 
== Referencias ==
  
[[Category:Estructura]]
+
[[Category:Operador aritmetico]]

Revisión actual del 00:20 27 sep 2019

Descripción

Decrementa en uno la variable dada.

Nota: Es lo mismo que variable = variable - 1.


Sintaxis

variable--;
--variable;
variable = variable - 1;

Retorno

Valor de la variable disminuido en uno.

Comentarios

  • Cual es la diferencia entre poner el operador delante o atrás de nombre de la variable ?

Advertencias

  • El riesgo del desbordamiento (ir más allá de lo que una variable puede almacenar, su rango de valores) sigue estando presente. En este caso sería volver a su valor máximo o pasar a un número positivo.

Ejemplo 1

Desbordamos el byte.

byte n = 1;
n--;   //0
n--;   //255
n--;   //254

Ejemplo 2

Nota la diferencia de poner delante o detras.

byte x = 2;
y = --x;   //x=1  y=1
y = x--;   //x=0  y=1

Ejemplo 3

Es muy comun usarlo en un for para hacer cuanta descendente.

void setup(){
}
void loop(){
   for (byte n=9; n>=0; n--){
      //Repite 10 veces.
   }
}

Vea también

  and
  not
  or
  xor


Referencias