Solidity - 数据类型



在任何语言中编写程序时,都需要使用各种变量来存储各种信息。变量只不过是预留的内存位置来存储值。这意味着当您创建变量时,您会在内存中预留一些空间。

您可能希望存储各种数据类型的信息,例如字符、宽字符、整数、浮点数、双精度浮点数、布尔值等。根据变量的数据类型,操作系统分配内存并决定可以在预留内存中存储什么。

值类型

Solidity 为程序员提供了丰富的内置和用户定义数据类型。下表列出了七种基本 C++ 数据类型:

类型 关键字
布尔型 bool true/false
整数 int/uint 不同大小的有符号和无符号整数。
整数 int8 到 int256 从 8 位到 256 位的有符号整数。int256 与 int 相同。
整数 uint8 到 uint256 从 8 位到 256 位的无符号整数。uint256 与 uint 相同。
定点数 fixed/unfixed 不同大小的有符号和无符号定点数。
定点数 fixed/unfixed 不同大小的有符号和无符号定点数。
定点数 fixedMxN 有符号定点数,其中 M 表示类型占用的位数,N 表示小数位数。M 应为 8 的倍数,范围从 8 到 256。N 可以是 0 到 80。fixed 与 fixed128x18 相同。
定点数 ufixedMxN 无符号定点数,其中 M 表示类型占用的位数,N 表示小数位数。M 应为 8 的倍数,范围从 8 到 256。N 可以是 0 到 80。ufixed 与 ufixed128x18 相同。

注意:您还可以将有符号和无符号定点数表示为 fixedMxN/ufixedMxN,其中 M 表示类型占用的位数,N 表示小数位数。M 应为 8 的倍数,范围从 8 到 256。N 可以是 0 到 80。

地址

address 存储表示以太坊地址大小的 20 字节值。地址可用于使用 .balance 方法获取余额,并可使用 .transfer 方法将余额转移到另一个地址。

address x = 0x212;
address myAddress = this;
if (x.balance < 10 && myAddress.balance >= 10) x.transfer(10);
广告
© . All rights reserved.