Solidity

Uint256 的地址在 Solidity 中是唯一的嗎?

  • October 20, 2022

我正在使用此函式將地址轉換為 uint 以用作 id,該 id 是否唯一?

function toUint(address self) internal pure returns(uint256) {
   return uint256(uint160(self));
}

我知道我們可以使用地址作為 id,但我的概念需要一個單位

uint 是地址的 base10 表示。有 2^256 個可能的地址,uint256 的最大值為 2^256,具有一對一的關係。所以是的,你得到的 id 將是獨一無二的。

更正:正如 0xSanson 指出的那樣,可能的地址是 2^160,因為我們實際上是在轉換為 uint160,但地址仍應生成唯一的 int Id

引用自:https://ethereum.stackexchange.com/questions/137829