Diferencia entre revisiones de «unsigned long»

De ArduWiki
Saltar a: navegación, buscar
(Parámetros)
(Parámetros)
Línea 14: Línea 14:
 
;valorUL: Forzar con subfijo '''UL'''. Puedes omitir la palabra '''unsigned long''' antes del nombre de la variable.
 
;valorUL: Forzar con subfijo '''UL'''. Puedes omitir la palabra '''unsigned long''' antes del nombre de la variable.
 
;uit32_t: sinonimo de '''unsigned long'''.
 
;uit32_t: sinonimo de '''unsigned long'''.
 +
 +
{| class="wikitable col2cen"
 +
|+Posibles formateadores
 +
!Base!!Subfijo!!Ejemplo
 +
|-
 +
|[[unsigned int]]||U||n = 123U
 +
|-
 +
|[[long]]||L||n = 123L
 +
|-
 +
|[[unsigned long]]||UL||n = 123UL
 +
|-
 +
|[[float]]||F||n =12.3F
 +
|}
 +
  
 
{| class="wikitable col2cen"
 
{| class="wikitable col2cen"

Revisión del 14:35 2 jul 2018

Descripción

Es como el tipo de dato long] para almacenar 4 byte (32 bits), pero sin signo es decir no almacena números negativos, teniendo un rango desde 0 a 4,294,967,295 (2^32-1). Alternativamente puede verse declarado como tipo uint32_t, sin embargo funciona exactamente igual.

Sintaxis

unsigned long variable [= valor];
uit32_t variable [= valor];
variable = valorUL;

Parámetros

variable
El nombre de variable a definir.
valor
Valor que asignamos a la variable en el rango entre 0~4,294,967,295. Parámetro opcional.
valorUL
Forzar con subfijo UL. Puedes omitir la palabra unsigned long antes del nombre de la variable.
uit32_t
sinonimo de unsigned long.
Posibles formateadores
Base Subfijo Ejemplo
unsigned int U n = 123U
long L n = 123L
unsigned long UL n = 123UL
float F n =12.3F


Posibles formateadores
Base Prefijo Comentario Ejemplo
DEC ninguno Dígitos 0~9 123
HEX 0x dígitos 0~9 + Caracteres A~F 0x7B
OCT 0 digitos 0~7 0173
BIN B 0 o 1 B1110011

Advertencias

  • Si sumas 1 al valor maximo que de 4,294,967,295 pasa a 08.
  • Si restas 1 al valor minimo que de 0 pasa a 4,294,967,295.

Ejemplo

Un ejemplo de parpadeo sin usar delay().

unsigned long hora=0;
void setup(){
   pinMode(LED_BUITIN, OUTPUT);
}
void loop(){
   if (millis() - hora > 500){
      hora = millis();
      digitalWrite(LED_BUITIN, !digitalRead(LED_BUITIN));
   }
}

Vea también

Referencias