Para obtener la documentacin ms reciente de Visual Studio 2017 RC,
consulte Documentacin de Visual Studio 2017 RC. Visual Basic proporciona diversos tipos de datos numricos para controlar nmeros en varias representaciones. Los tipos integrales representan slo nmeros enteros (positivos, negativos y cero) y los tipos no integrales representan nmeros con partes enteras y fraccionarias. Para ver una tabla en la que se muestra una comparacin en paralelo de los tipos de datos de Visual Basic, vea Tipos de datos. Tipos numricos integrales Los tipos de datos integrales son aquellos que slo representan nmeros sin partes fraccionarias. Los tipos de datos integrales con signo son SByte (Tipo de datos) (de 8 bits), Short (Tipo de datos) (de 16 bits), Integer (Tipo de datos) (de 32 bits) y Long (Tipo de datos) (de 64 bits). Si una variable almacena siempre enteros en lugar de nmeros fraccionarios, declrela como uno de estos tipos. Los tipos enteros sin signo son Byte (Tipo de datos) (de 8 bits), UShort (Tipo de datos) (de 16 bits), UInteger (Tipo de datos) (de 32 bits) y ULong (Tipo de datos) (de 64 bits). Si una variable contiene datos binarios o datos de naturaleza desconocida, declrela como uno de estos tipos. Rendimiento Los operadores aritmticos son ms rpidos con los tipos enteros que con cualquier otro tipo de datos. Son ms rpidos con los tipos Integer y UInteger de Visual Basic. Enteros grandes Si es preciso que contenga un entero mayor que el que es capaz de contener el tipo de datos Integer, puede usar en su lugar el tipo de datos Long. Las variables Long pueden contener nmeros comprendidos entre -9.223.372.036.854.775.808 y 9.223.372.036.854.775.807. Las operaciones con Long son ligeramente ms lentas que con Integer. Si necesita valores aun ms grandes, puede utilizar Decimal (Tipo de datos). Puede contener nmeros de -79.228.162.514.264.337.593.543.950,335 a 79.228.162.514.264.337.593.543.950,335 en una variable Decimal si no utiliza ninguna posicin decimal. Sin embargo, las operaciones con nmeros Decimal son considerablemente ms lentas que con cualquier otro tipo de dato numrico. Enteros pequeos Si no necesita el intervalo completo del tipo de datos Integer, puede utilizar el tipo de datos Short, que puede contener enteros comprendidos entre -32.768 y 32.767. En el caso del intervalo de enteros ms pequeo, el tipo de datos SByte contiene los enteros comprendidos entre -128 y 127. Si tiene un nmero muy grande de variables que contienen enteros pequeos, Common Language Runtime puede almacenar a veces las variables Short y SByte de un modo ms eficaz y ahorrar espacio de memoria. Sin embargo, las operaciones con Short y SByte son algo ms lentas que con Integer. Enteros sin signo Si sabe que la variable no va a necesitar contener nunca un nmero negativo, puede utilizar los tipos sin signo Byte, UShort, UInteger y ULong. Cada uno de estos tipos de datos puede contener un entero positivo dos veces ms grande que su tipo con signo correspondiente (SByte, Short, Integer y Long). En lo que se refiere a rendimiento, un tipo sin signo es exactamente tan eficaz como su tipo con signo correspondiente. En particular, UInteger comparte con Integer la distincin de ser el ms eficaz de todos los tipos de datos numrico bsicos. Tipos numricos no integrales Los tipos de datos no integrales son aquellos que representan nmeros que contienen tanto partes enteras como decimales. Los tipos de datos numricos no integrales son Decimal (punto fijo de 128 bits), Single (Tipo de datos) (punto flotante de 32 bits) y Double (Tipo de datos) (punto flotante de 64 bits). Todos ellos son tipos con signo. Si una variable puede contener una fraccin, declrela como variable de uno de estos tipos. Decimal no es un tipo de datos de punto flotante. Los nmeros de tipo Decimal tienen un valor entero binario y un factor de escala de entero que especifica qu parte del valor es una fraccin decimal. Puede utilizar las variables de Decimal por los valores de moneda. la ventaja es la precisin de los valores. El tipo de datos Double es ms rpido y requiere menos memoria, pero est sujeto a errores de redondeo. El tipo de datos de Decimal proporciona una exactitud total en 28 posiciones decimales. Los nmeros con punto flotante (Single y Double) tienen intervalos mayores que los nmeros Decimal pero pueden estar sujetos a errores de redondeo. Los tipos de punto flotante admiten menos dgitos significativos que Decimal pero pueden representar valores de mayor magnitud. Los valores de nmeros no integrales se pueden expresar como mmmEeee, donde mmm es la mantisa (dgitos significativos) y eee es el exponente (una potencia de 10). Los valores positivos superiores de los tipos no integrales son 7.9228162514264337593543950335E+28 para Decimal, 3.4028235E+38 para Single y 1.79769313486231570E+308 para Double. Rendimiento Double es el ms eficaz de los tipos de datos fraccionarios, porque los procesadores de las plataformas actuales realizan las operaciones de punto flotante en precisin doble. Sin embargo, las operaciones con Double no son tan rpidas como con los tipos enteros como Integer. Magnitudes pequeas Para los nmeros con la magnitud ms pequea posible (cercana a 0), las variables Double pueden contener nmeros tan pequeos como -4.94065645841246544E-324 para valores negativos y 4.94065645841246544E-324 para valores positivos. Nmeros fraccionarios pequeos Si no necesita el intervalo completo del tipo de datos Double, puede utilizar el tipo de datos Single, que puede contener nmeros de punto flotante comprendidos entre -3.4028235E+38 y 3.4028235E+38. Las magnitudes ms pequeas para las variables Single son -1.401298E-45 para valores negativos y 1.401298E-45 para valores positivos. Si tiene un nmero muy grande de variables que contienen nmeros en punto flotante pequeos, Common Language Runtime puede almacenar a veces las variables Single de un modo ms eficaz y ahorrar espacio de memoria.