Con respecto a Solidity, ¿Qué es UINT256?
Del ejemplo del token en https://ethereum.org/token :
/* This creates an array with all balances */
mapping (address => uint256) public balanceOf;
Más allá de ser un tipo variable en informática general, me encantaría obtener una mejor comprensión y contexto en el mundo de Ethereum. ¿Por qué no usar simplemente un INT? Asumiendo que es un tipo específico de Integer, ¿qué denota la "U"?
Con respecto a la Solidez...
Esta es realmente una pregunta más general de informática que se respondería mejor en Stack Overflow.
A riesgo de repetir lo que ha enlazado @Ismael...
U
- sin signo (lo que significa que este tipo solo puede representar números enteros positivos, no enteros positivos y negativos)INT
- entero256
- 256 bits de tamañoContexto: La EVM (Ethereum Virtual Machine) utiliza 256 bits como tamaño de palabra. Ver: Justificación detrás de palabras de 256 bits en EVM
Enteros en solidez:
uint256
( uint
es un alias) es un entero sin signo que tiene:
int256
( int
es un alias) es un entero con signo que tiene:
Por ejemplo, en Solidity podríamos escribir el siguiente código:
uint8 public constant decimals = 6;
uint256 public constant totalSupply = 1000000*10**uint256(decimals); // 1000000000000
PD Es inusual que int
/ uint
en Solidity tenga un tamaño de 256 bits, porque hay lenguajes tan populares como C#/Java que tienen int
un tipo de datos con un tamaño de 32 bits:
uint256
casi siempre se usan para balances.
ismael
bruce seymour
Maximiliano Laumeister