You are on page 1of 10

Tipo de datos del valor devuelto

El nombre de función determina el tipo de datos del valor devuelto, como se muestra en la tabla siguiente.

Nombre de la función
CBool

Tipo de datos devuelto

Intervalo de valores del argumento expression

Boolean (Tipo Cualquier expresión numérica, Char o String válida. de datos, Visual Basic)

CByte

Byte (Tipo de datos, Visual Basic)

0 a 255 (sin signo); las partes fraccionarias se redondean. 1

CChar

Char (Tipo de datos, Visual Basic)

Cualquier expresión Char o String válida; sólo se convierte el primer carácter de String; el valor puede estar comprendido entre 0 y 65535 (sin signo).

CDate

Date (Tipo de datos, Visual Basic)

Cualquier representación válida de fecha y hora.

CDbl

Double (Tipo de datos, Visual Basic)

de -1,79769313486231570E+308 a -4,94065645841246544E-324 para valores negativos; de 4,94065645841246544E-324 a 1,79769313486231570E+308 para valores positivos.

CDec

Decimal (Tipo +/-79.228.162.514.264.337.593.543.950.335 para números a partir de cero, es decir, de datos, números sin decimales.Para números con 28 posiciones decimales, el intervalo es Visual Basic) +/-7,9228162514264337593543950335.El menor número posible distinto de cero es 0,0000000000000000000000000001 (+/-1E-28).

CInt

Integer (Tipo de datos, Visual Basic)

de -2.147.483.648 a 2.147.483.647; las partes fraccionarias se redondean. 1

CLng

Long (Tipo de de -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807; las partes fraccionarias datos, Visual se redondean.1 Basic)

las partes fraccionarias se redondean.967.073. 1 datos. las partes fraccionarias se redondean. Visual Basic) De -3.1 CUShort UShort (Tipo de datos.NET Framework no siempre producen los mismos resultados que las funciones de Visual Basic.401298E-45 para valores negativos.551.401298E-45 a 3. . CSByte SByte (Tipo de datos.402823E+38 a –1.CObj Object (Tipo de datos) Cualquier expresión válida. además hacen que el código fuente sea más corto y fácil de leer.Vea "Comentarios" para obtener más información. Visual Basic) de 0 a 18. las partes fraccionarias se redondean. Visual Basic) Los valores devueltos para CStr dependen del argumento expression. los métodos de conversión de .295 (sin signo). como ToString().294. Visual Basic) CSng Single (Tipo de datos. de 1. CStr String (Tipo de datos. las partes fraccionarias se redondean. Visual Basic) de -128 a 127.402823E+38 para valores positivos.Las funciones de Visual Basic se han diseñado para que interactúen de forma óptima con el código de Visual Basic.NET Framework.Vea Valores devueltos para la función CStr (Visual Basic). Visual Basic) de 0 a 65.768 a 32. las partes fraccionarias se redondean.744.709.535 (sin signo). en la clase Convert o en una clase o estructura individual de tipos. 1 CULng ULong (Tipo de datos. 1 1 Las partes fraccionarias pueden estar sujetas a un tipo especial de redondeo denominado redondeo bancario. Comentarios Por regla general.615 (sin signo).Asimismo.767.446. CUInt UInteger (Tipo de datos) de 0 a 4.1 CShort Short (Tipo de de -32. debe utilizar preferentemente las funciones de conversión de tipos de Visual Basic que los métodos de .

Sin embargo. en que.Si se convierte un valor Date a una cadena. Partes fraccionarias. vea Solucionar problemas de tipos de datos (Visual Basic). CLng. por ejemplo “Miércoles”.Debe suministrar el día.por ejemplo cuando se convierte de Boolean a Integer.0 en un valor Date en Visual Basic 2005 o versiones posteriores. de no hacerlo así. truncan la parte fraccionaria de un número. las funciones de conversión de enteros (CByte. CSByte. Las funciones de conversión de tipos que implican cadenas realizan las conversiones en función de la configuración de la referencia cultural actual de la aplicación. En general.      Conversiones de fecha y hora. El tipo de datos Date (Tipo de datos. CInt.FromOADate.5. utilice los métodos ToString(IFormatProvider) y Parse(String.Por ejemplo. no puede utilizar las funciones de conversión de tipos de Visual Basic. las funciones de conversión de enteros lo rodean al entero par más próximo. ya que la información de fecha se omite. 0001 9:30:00# en una cadena.Para ello. Visual Basic) contiene siempre información de fecha y hora. CUInt.Para convertir un valor Date de Visual Basic 6.Por ejemplo. Comportamiento  Conversión.Para obtener más información. Si el argumento expression transferido a la función está fuera del intervalo de valores del tipo de datos al que se va a convertir. se inicia una excepción OverflowException.". la información de fecha permanece presente en el valor de Date original y se puede recuperar mediante funciones como DatePart. Distinción de referencias culturales. CType (Función) . utilice CDec para forzar la ejecución de operaciones con aritmética decimal en los casos en los que se haría con precisión sencilla. CStr no incluye valores neutrales en la cadena resultante. en lugar de redondear. CULng y CUShort) quitan la parte fraccionaria y redondean el valor al entero más próximo. CInt y CLng difieren de las funciones Int y Fix.Parse cuando convierte una cadena a un valor de tipo Double y utilice Double.Esto se denomina redondeo bancario a veces y su propósito es compensar una tendencia que se podría acumular al sumar muchos de estos números. mes y año en el orden correcto para la configuración regional. Si la parte fraccionaria es exactamente 0. Utilice la función IsDate para determinar si un valor se puede convertir en una fecha y hora.CDate reconoce literales de fecha y literales de tiempo pero no valores numéricos.Por ejemplo. si se convierte #January 1.Por ejemplo.No se puede reconocer un formato de fecha largo si contiene la cadena del día de la semana.ToString cuando convierta un valor de tipo Double en una cadena. Fix e Int siempre devuelven un valor del mismo tipo de datos que reciben.5 y 2. Cuando un valor no integral se convierte a un tipo entero.Para la conversión de tipos. puede utilizar el método DateTime. CDate reconoce formatos de fecha de acuerdo con la configuración regional del sistema.m. es posible que la fecha no se interprete de forma correcta. IFormatProvider) de ese tipo de valor. puede utilizar las funciones de conversión de tipos de datos para convertir el resultado de una operación a un tipo de datos concreto en vez de al tipo de datos predeterminado. el resultado sería "9:30:00 a. doble precisión o aritmética de enteros.5 se redondean a 2. utilice Double. CShort.Además.Por ejemplo.5 se redondea a 0 y 1. 0. Conversiones incorrectas. Valores de fecha u hora neutrales. Si necesita convertir una representación de cadena de un valor en un formato diferente al especificado por la configuración regional. Visual Basic considera 1/1/0001 (1 de enero del año 1) un valor neutral de fecha y 00:00:00 (medianoche) un valor neutral de hora.

y convierte expression en typename. VB Copiar Dim a. vea DirectCast (Operador) (Visual Basic) y TryCast (Operador) (Visual Basic). VB Copiar Dim aDouble As Double Dim aByte As Byte aDouble = 125. donde typename puede ser cualquier tipo de datos.La función CType toma un segundo argumento. check = CBool(a = b) c = 0 ' The following line of code sets check to False. en caso contrario. aByte = CByte(aDouble) Ejemplo de la función CChar En el ejemplo siguiente se utiliza la función CChar para convertir el primer carácter de una expresión String en un tipo Char. VB Copiar Dim aString As String . estructura. c As Integer Dim check As Boolean a = 5 b = 5 ' The following line of code sets check to True. typename. b.5678 ' The following line of code sets aByte to 126. check = CBool(c) Ejemplo de la función CByte En este ejemplo se utiliza la función CByte para convertir expresiones en Byte. devuelve False. Ejemplo de la función CBool En este ejemplo se utiliza la función CBool para convertir expresiones en valores Boolean.Si una expresión se evalúa en un valor distinto de cero. Para una comparación de CType con las otras palabras clave de conversión de tipos. clase o interfaz para la que exista una conversión válida. CBool devuelve True.

aTime = CDate(aTimeString) Ejemplo del algoritmo CDbl VB Copiar .En general.En el ejemplo se utiliza la función InputBox para obtener la cadena de dígitos. tal y como se puede ver en este ejemplo. VB Copiar Dim aDateString.m. aChar = CChar(aString) El argumento de entrada para CChar debe pertenecer al tipo de datos Char o String.#. CInt para convertir la cadena en el tipo Integer y ChrW para convertir el número en el tipo Char. aTime As Date aDateString = "February 12. por ejemplo #Feb 12.No puede utilizar CChar para convertir un número en un carácter. porque CChar no acepta un tipo de datos numéricos. no se recomienda especificar las fechas y horas como cadenas en el código. 1969" aTimeString = "4:35:47 PM" ' The following line of code sets aDate to a Date value. aDate = CDate(aDateString) ' The following line of code sets aTime to Date value.Utilice literales de fecha y hora.Dim aChar As Char ' CChar converts only the first character of the string. aTimeString As String Dim aDate.En el ejemplo siguiente se obtiene un número que representa un punto de código (código de carácter) y se convierte al carácter correspondiente. 1969# y #4:45:233 p. aString = "BCD" ' The following line of code sets aChar to "B". VB Copiar Dim someDigits As String Dim codePoint As Integer Dim thisChar As Char someDigits = InputBox("Enter code point of character:") codePoint = CInt(someDigits) ' The following line of code sets thisChar to the Char value of codePoint. thisChar = ChrW(codePoint) Ejemplo de la función CDate En este ejemplo se utiliza la función CDate para convertir cadenas en valores Date.

aDbl2 As Double Dim aLng1. anInt = CInt(aDbl) Ejemplo del algoritmo CLng En el ejemplo siguiente se utiliza la función CLng para convertir valores a Long.0587 ' The following line of code sets aDecimal to 10000000. VB Copiar Dim aDbl As Double Dim anInt As Integer aDbl = 2345. aLng2 As Long aDbl1 = 25427. .456784D ' The following line of code sets aDbl to 1. VB Copiar Dim aDbl1.9225456288E+1.Dim aDec As Decimal Dim aDbl As Double ' The following line of code uses the literal type character D to make aDec a Decimal.55 ' The following line of code sets aLng1 to 25427. VB Copiar Dim aDouble As Double Dim aDecimal As Decimal aDouble = 10000000.2D * 0.0587.45 aDbl2 = 25427. aDecimal = CDec(aDouble) Ejemplo de la función CInt En este ejemplo se utiliza la función CInt para convertir un valor a Integer. aDbl = CDbl(aDec * 8.5678 ' The following line of code sets anInt to 2346.01D) Ejemplo de la función CDec En el siguiente ejemplo se utiliza la función CDec para convertir un valor numérico en Decimal. aDec = 234.

anObject = CObj(aDouble) Ejemplo de CSByte En el siguiente ejemplo se utiliza la función CSByte para convertir un valor numérico en SByte.501 ' The following line of code sets anSByte to 40. aLng2 = CLng(aDbl2) Ejemplo de la función CObj En el siguiente ejemplo se utiliza la función CObj para convertir un valor numérico en Object. VB Copiar Dim aDouble As Double Dim anObject As Object aDouble = 2. aShort = CShort(aByte) . que señala al valor Double que tiene asignado. VB Copiar Dim aByte As Byte Dim aShort As Short aByte = 100 ' The following line of code sets aShort to 100.La variable Object en sí contiene sólo un puntero de cuatro bytes.7182818284 ' The following line of code sets anObject to a pointer to aDouble. anSByte = CSByte(aDouble) Ejemplo de la función CShort En el siguiente ejemplo se utiliza la función CShort para convertir un valor numérico en Short.aLng1 = CLng(aDbl1) ' The following line of code sets aLng2 to 25428. VB Copiar Dim aDouble As Double Dim anSByte As SByte aDouble = 39.

' The following line of code sets aString to "2/12/1969 12:00:01 AM". aSingle1 = CSng(aDouble1) ' The following line of code sets aSingle2 to 75.34211.Ejemplo del algoritmo CSng En el ejemplo siguiente se utiliza la función CSng para convertir valores a Single.324". 1969 00:00:00# ' Date literals must be in the format #m/d/yyyy# or they are invalid.3421567 ' The following line of code sets aSingle1 to 75. aString = CStr(aDate) ' The following line of code sets the time component of aDate to one second past midnight.3421105 aDouble2 = 75. .34216. aDate = #2/12/1969 12:00:01 AM# ' The time component becomes part of the converted value. aSingle2 = CSng(aDouble2) Ejemplo del algoritmo CStr En el siguiente ejemplo se utiliza la función CStr para convertir un valor numérico en String. VB Copiar Dim aDate As Date Dim aString As String ' The following line of code generates a COMPILER ERROR because of invalid format. ' The following line of code sets aString to "2/12/1969". aSingle2 As Single aDouble1 = 75. aString = CStr(aDouble) En el ejemplo siguiente se utiliza la función CStr para convertir valores Date en valores String. ' The following line of code sets the time component of aDate to midnight. aDate = #2/12/1969# ' The following conversion suppresses the neutral time value of 00:00:00. VB Copiar Dim aDouble As Double Dim aString As String aDouble = 437.324 ' The following line of code sets aString to "437. aDouble2 As Double Dim aSingle1. VB Copiar Dim aDouble1. ' aDate = #February 12.

aULong = CULng(aDouble) Ejemplo de CUShort En el siguiente ejemplo se utiliza la función CUShort para convertir un valor numérico en UShort.m.501 . aUInteger = CUInt(aDouble) Ejemplo de CULng En el siguiente ejemplo se utiliza la función CULng para convertir un valor numérico en ULong. vea Valores devueltos para la función CStr (Visual Basic). VB Copiar Dim aDouble As Double Dim aUInteger As UInteger aDouble = 39. VB Copiar Dim aDouble As Double Dim aUShort As UShort aDouble = 39.501 ' The following line of code sets aULong to 40.". Para obtener información detallada sobre los valores devueltos por CStr. por ejemplo. CStr suprime los valores neutrales 1/1/0001 para la fecha y 00:00:00 para la hora.501 ' The following line of code sets aUInteger to 40.aString = CStr(aDate) CStr siempre representa un valor Date en el formato corto estándar de la configuración regional actual. "15/6/2003 4:35:47 p. VB Copiar Dim aDouble As Double Dim aULong As ULong aDouble = 39. Ejemplo de CUInt En el siguiente ejemplo se utiliza la función CUInt para convertir un valor numérico en UInteger.Sin embargo.

aUShort = CUShort(aDouble) .' The following line of code sets aUShort to 40.