Compartilhar via


Tipos de dados numéricos (Visual Basic)

Visual Basic fornece vários tipos de dados numéricos para tratar números em diversas representações.Tipos Integral representam apenas números inteiros (positivo, negativo e zero), e tipos nonintegral representam números com partes inteira e fracionária.

Para obter uma tabela que mostre uma comparação lado-a-lado dos Visual Basic tipos de dados, consulte Resumo do tipo de dados (Visual Basic).

Tipos Numéricos Integral

Tipos de dados integral são aqueles que representam apenas números sem partes fracionárias.

Os tipos de dados integral com sinal são Tipo de dados SByte (Visual Basic) (8-bit), Tipo de dados Short (Visual Basic) (16 bits), Tipo de dados inteiro (Visual Basic) (32 bits) e Tipo de dado Long (Visual Basic) (64 bits).Se uma variável sempre armazena números inteiros em vez de números fracionários, declare-a como um desses tipos.

O tipos integral sem sinal são Tipo de dados de byte (Visual Basic) (8-bit), Tipo de dados UShort (Visual Basic) (16 bits), Tipo de dados UInteger (32 bits) e Tipo de dados ULong (Visual Basic) (64 bits).Se uma variável contiver dados binários, ou de natureza desconhecida, declare-a como um desses tipos.

ae55hdtk.collapse_all(pt-br,VS.110).gifDesempenho

Operações aritméticas são mais rápidas com tipos integrais do que com outros tipos de dados.Eles são mais rápidos com tipos Integer e UInteger no Visual Basic.

ae55hdtk.collapse_all(pt-br,VS.110).gifInteiros Grandes

Se você precisar armazenar um número inteiro maior que o Integer pode conter o tipo de dados, você pode usar o Long em vez disso, o tipo de dados.Longvariáveis podem armazenar números de -9.223.372.036.854.775.808 através de 9.223.372.036.854.775.807.Operações com Long são um pouco mais lento do que com Integer.

Se você precisar de valores ainda maiores, você pode usar o Tipo de dados decimal (Visual Basic).Você pode armazenar números de-79,228,162,514,264,337,593,543,950,335 até 79,228,162,514,264,337,593,543,950,335 em uma variável Decimal se você não usa nenhuma casa decimal.No entanto, operações com números Decimal números são consideravelmente mais lentas do que com qualquer outro tipo de dados numérico.

ae55hdtk.collapse_all(pt-br,VS.110).gifInteiros Pequenos

Se você não precisar toda a gama da Integer tipo de dados, você pode usar o Short tipo de dados que pode conter números inteiros de -32.768 até 32.767.Para o menor intervalo inteiro, o SByte tipo de dados contém inteiros de -128 a 127.Se você tiver um grande número de variáveis que armazenar números inteiros pequenos, o common language runtime, às vezes, pode armazenar seu Short e SByte variáveis de maneira mais eficiente e economizar o consumo de memória.No entanto, operações com Short e SByte são um pouco mais lentas do que com Integer.

ae55hdtk.collapse_all(pt-br,VS.110).gifIntegers Sem Sinal

Se você souber que sua variável nunca precisará armazenar um número negativo, você pode usar os tipos sem sinal Byte,UShort,UInteger e ULong.Cada um desses tipos de dados pode conter um número inteiro positivo duas vezes o tamanho de seu tipo com sinal correspondente (SByte,Short,Integer e Long).Em termos de desempenho, cada tipo sem sinal é tão eficiente quanto seu tipo com sinal correspondente.Em particular, UInteger compartilha com Integer a distinção de ser o mais eficiente de todos os tipos de dados numérico elementar.

Tipos Numéricos Nonintegral

Os tipos de dados nonintegral são aqueles que representam números com partes inteira e fracionária.

Os tipos de dados numéricos nonintegral são Decimal (128 bits fixo ponto), Tipo de dados único (Visual Basic) (32-bit ponto flutuante) e Tipo de dados Double (Visual Basic) (64-Bit ponto flutuante).Todos eles são tipos com sinal.Se uma variável pode conter uma fração, declare-a como um desses tipos.

Decimalnão é um tipo de dados de ponto flutuante.Decimalnúmeros têm um valor inteiro binário e um fator de escala de número inteiro que especifica qual parte do valor é uma fração decimal.

Você pode usar Decimal variáveis para valores de dinheiro.A vantagem é a precisão dos valores.O tipo de dados Double é mais rápido e requer menos memória, mas é requerente to erros de arredondamento.O Decimal tipo de dados mantém total precisão para 28 casas decimais.

Números ponto flutuante (Single e Double) têm Intervalos maiores do que números Decimal mas podem ser sujeitos a erros de arredondamento.Tipos de ponto flutuante suportam menos dígitos significativos que Decimal mas podem representar valores de magnitude maior.

Valores numéricos Nonintegral podem ser expressos como mmmEeee, em que mmm é a mantissa (os dígitos significativos) e eee é o expoente (uma potência de 10).Os valores positivos mais altos dos tipos nonintegral são 7.9228162514264337593543950335E + 28 para Decimal, 3.4028235E + 38 para Single e 1.79769313486231570E + 308 para Double.

ae55hdtk.collapse_all(pt-br,VS.110).gifDesempenho

Double é o mais eficiente dos tipos de dados fracionários, porque os processadores em plataformas atuais executam operações de ponto flutuante com precisão dupla.No entanto, operações com Double não são tão rápidas como com os tipos integrais como Integer.

ae55hdtk.collapse_all(pt-br,VS.110).gifMagnitudes Pequenas

Para números com o menor magnitude possível (próximos a 0), variáveis Double podem conter números tão pequenos quanto - 4.94065645841246544E- 324 para valores negativos e 4.94065645841246544E - 324 para valores positivos.

ae55hdtk.collapse_all(pt-br,VS.110).gifNúmeros Fracionários Pequenos

Se você não precisar toda a gama da Double tipo de dados, você pode usar o Single tipo de dados que pode conter números de ponto flutuante de - 3.4028235E + 38 a 3.4028235E + 38.As magnitudes menores para Single as variáveis são - 1, 401298E-45 para valores negativos e 1, 401298E-45 para valores positivos.Se você tiver um grande número de variáveis que armazenam números de ponto flutuante pequenos, o Common Language Runtime pode, às vezes, armazenar as variáveis Single forma mais eficiente e economizar memória.

Consulte também

Tarefas

Solucionando problemas de tipos de dados (Visual Basic)

Como: chamar uma função do Windows que leva os tipos sem sinal (Visual Basic)

Conceitos

Tipos de dados de caracteres (Visual Basic)

Diversos tipos de dados (Visual Basic)

Outros recursos

Tipos de dados elementar (Visual Basic)