坚固性 - 类型


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

您可能喜欢存储各种数据类型的信息,如字符、宽字符、整数、浮点、双浮点、布尔值等。操作系统根据变量的数据类型分配内存并决定可以存储的内容保留内存。

值类型

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

类型 关键词 价值观
布尔值 布尔值 真假
整数 整数/单位 不同大小的有符号和无符号整数。
整数 int8 到 int256 从 8 位到 256 位的有符号 int。int256 与 int 相同。
整数 uint8 到 uint256 从 8 位到 256 位的无符号整数。uint256 与 uint 相同。
定点数 固定/不固定 不同大小的有符号和无符号定点数。
定点数 固定/不固定 不同大小的有符号和无符号定点数。
定点数 固定MxN 有符号定点数,其中 M 表示类型所占的位数,N 表示小数点。M 应能被 8 整除,范围为 8 到 256。N 可以为 0 到 80。fixed 与fixed128x18 相同。
定点数 固定MxN 无符号定点数,其中 M 表示类型所占的位数,N 表示小数点。M 应能被 8 整除,范围为 8 到 256。N 可以为 0 到 80。ufixed 与 ufixed128x18 相同。

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

地址

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

address x = 0x212;
address myAddress = this;
if (x.balance < 10 && myAddress.balance >= 10) x.transfer(10);