Solidez - Tipos
Ao escrever um programa em qualquer idioma, você precisa usar várias variáveis para armazenar várias informações. As variáveis nada mais são do que locais de memória reservados para armazenar valores. Isso significa que, ao criar uma variável, você reserva algum espaço na memória.
Você pode gostar de armazenar informações de vários tipos de dados como caractere, caractere largo, inteiro, ponto flutuante, ponto flutuante duplo, booleano etc. Com base no tipo de dados de uma variável, o sistema operacional aloca memória e decide o que pode ser armazenado no memória reservada.
Tipos de valor
Solidity oferece ao programador uma rica variedade de tipos de dados integrados e definidos pelo usuário. A tabela a seguir lista sete tipos de dados básicos C ++ -
Tipo | Palavra-chave | Valores |
---|---|---|
boleano | bool | verdadeiro falso |
Inteiro | int / uint | Inteiros assinados e não assinados de tamanhos variados. |
Inteiro | int8 a int256 | Int assinado de 8 bits a 256 bits. int256 é o mesmo que int. |
Inteiro | uint8 a uint256 | Int sem sinal de 8 bits a 256 bits. uint256 é o mesmo que uint. |
Números de pontos fixos | corrigido / não corrigido | Números de pontos fixos assinados e não assinados de vários tamanhos. |
Números de pontos fixos | corrigido / não corrigido | Números de pontos fixos assinados e não assinados de vários tamanhos. |
Números de pontos fixos | fixedMxN | Número de ponto fixo com sinal, em que M representa o número de bits obtidos por tipo e N representa os pontos decimais. M deve ser divisível por 8 e vai de 8 a 256. N pode ser de 0 a 80. fixo é igual a fixo 128x18. |
Números de pontos fixos | ufixedMxN | Número de ponto fixo sem sinal, onde M representa o número de bits obtidos por tipo e N representa as casas decimais. M deve ser divisível por 8 e vai de 8 a 256. N pode ser de 0 a 80. ufixed é o mesmo que ufixed128x18. |
endereço
address contém o valor de 20 bytes que representa o tamanho de um endereço Ethereum. Um endereço pode ser usado para obter o saldo usando o método .balance e pode ser usado para transferir o saldo para outro endereço usando o método .transfer.
address x = 0x212;
address myAddress = this;
if (x.balance < 10 && myAddress.balance >= 10) x.transfer(10);