Pregunta

Cuál es la diferencia entre Int32 y UInt32?

Si son iguales con las capacidades de rango de capacidad, la pregunta es por qué razón UInt32 ¿fue creado? Cuando debo usar UInt32 en vez de Int32?

¿Fue útil?

Solución

UINT32 no permite números negativos. De MSDN:

El tipo de valor UINT32 representa enteros sin firmar con valores que van de 0 a 4,294,967,295.

Otros consejos

Un número entero es -2147483648 a 2147483647 y un entero sin firmar es de 0 a 4294967295.

Este artículo podría ayudarte.

UINT32 es un entero sin firmar con 32 bits, lo que significa que puede representar 2^32 números (0-4294967295).

Sin embargo, para representar números negativos, un bit de los 32 bits está reservado para indicar un número positivo o negativo. Esto te deja con 2^31 números posibles en lo negativo y también en lo positivo. El rango resultante es -2147483648 a 2147483647 (el rango positivo incluye el valor 0, por lo tanto, solo 2147483647). Esta representación se llama int32.

Debe elegir sin firmar los números que no pueden ser negativos por definición, ya que le ofrece un rango más amplio, pero debe tener en cuenta que no es posible convertir desde e int32 ya que INT32 no puede contener el rango de UINT32 y viceversa .

UINT32 no está firmado. No se puede usar para representar números negativos, pero puede contener números positivos mayores.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top