Diferencia entre revisiones de «unsigned int»

De ArduWiki
Saltar a: navegación, buscar
(Advertencias)
(Ejemplo)
 
(No se muestra una edición intermedia del mismo usuario)
Línea 58: Línea 58:
 
== Ejemplo ==
 
== Ejemplo ==
 
<syntaxhighlight lang="c++">
 
<syntaxhighlight lang="c++">
unsigned int x = 123;
+
unsigned int x = 12345;
int x = 78U123; //Con "78U" forzamos unsigned
+
x = 12345U;               //Con "U" forzamos unsigned int
 
</syntaxhighlight>
 
</syntaxhighlight>
  

Revisión actual del 00:50 25 jul 2019

Descripción

Es el formato numérico de 2 bytes (16 bits), son enteros comprendidos en el rango de 0 a 65,535 (2^16-1).

Tip: Alternativamente puede verse declarado como tipo word o uint16_t, sin embargo funciona exactamente igual.


Nota: La diferencia entre enteros sin signo y enteros con signo o int, radica en la forma en que se trata el bit más alto, a veces llamado bit de "signo". En el tipo entero con signo, si el bit más alto es 1, el número se interpreta como que es un número negativo y los otros 15 bits se interpretan como complemento matemático a 2.


Sintaxis

unsignet int variable [= valor];
uint16_t variable [= valor];  //En Arduino UNO
uint32_t variable [= valor];  //En Arduino DUE
size_t variable [= valor];
word variable [= valor];
variable = valorU;

Parametros

variable
nombre de la variable a definir.
valor
numero entre 0 y 4,294'967,295. Parámetro opcional.
valorU
forzar tipo con subfijo U. Puedes omitir unsigned int antes del nombre de la variable.
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

Comentarios

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

Advertencias

  • En Arduino UNO y otras placas basadas en el ATmega, los unsigned int almacenan un numero de 2 bytes (16 bit), con un rango de entre 0 y 32,065 (2^16 - 1). Alternativamente puede verse declarado como tipo uint16_t o word.
  • En Arduino DUE y Zero, los unsigned int almacenan un numero de 4 bytes (32 bit), con un rango de 0 a 4,294,967,295 (2^32 - 1). Alternativamente puede verse declarado como tipo uint32_t.

Ejemplo

unsigned int x = 12345;
x = 12345U;                //Con "U" forzamos unsigned int

Vea también

  bool
  byte
  char
  int
  long
  void
  word


Referencias