Sunteți pe pagina 1din 10

Tipo de datos del valor devuelto

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

Nombre de la funcin
CBool

Tipo de datos devuelto

Intervalo de valores del argumento expression

Boolean (Tipo Cualquier expresin numrica, Char o String vlida. 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 expresin Char o String vlida; slo se convierte el primer carcter de String; el valor puede estar comprendido entre 0 y 65535 (sin signo).

CDate

Date (Tipo de datos, Visual Basic)

Cualquier representacin vlida 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 nmeros a partir de cero, es decir, de datos, nmeros sin decimales.Para nmeros con 28 posiciones decimales, el intervalo es Visual Basic) +/-7,9228162514264337593543950335.El menor nmero 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)

CObj

Object (Tipo de datos)

Cualquier expresin vlida.

CSByte

SByte (Tipo de datos, Visual Basic)

de -128 a 127; las partes fraccionarias se redondean.1

CShort

Short (Tipo de de -32.768 a 32.767; las partes fraccionarias se redondean. 1 datos, Visual Basic)

CSng

Single (Tipo de datos, Visual Basic)

De -3,402823E+38 a 1,401298E-45 para valores negativos; de 1,401298E-45 a 3,402823E+38 para valores positivos.

CStr

String (Tipo de datos, Visual Basic)

Los valores devueltos para CStr dependen del argumento expression.Vea Valores devueltos para la funcin CStr (Visual Basic).

CUInt

UInteger (Tipo de datos)

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

CULng

ULong (Tipo de datos, Visual Basic)

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

CUShort

UShort (Tipo de datos, Visual Basic)

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

Las partes fraccionarias pueden estar sujetas a un tipo especial de redondeo denominado redondeo bancario.Vea "Comentarios" para obtener ms informacin.

Comentarios
Por regla general, debe utilizar preferentemente las funciones de conversin de tipos de Visual Basic que los mtodos de .NET Framework, como ToString(), en la clase Convert o en una clase o estructura individual de tipos.Las funciones de Visual Basic se han diseado para que interacten de forma ptima con el cdigo de Visual Basic; adems hacen que el cdigo fuente sea ms corto y fcil de leer.Asimismo, los mtodos de conversin de .NET Framework no siempre producen los mismos resultados que las funciones de Visual Basic,

por ejemplo cuando se convierte de Boolean a Integer.Para obtener ms informacin, vea Solucionar problemas de tipos de datos (Visual Basic).

Comportamiento

Conversin. En general, puede utilizar las funciones de conversin de tipos de datos para convertir el resultado de una operacin a un tipo de datos concreto en vez de al tipo de datos predeterminado.Por ejemplo, utilice CDec para forzar la ejecucin de operaciones con aritmtica decimal en los casos en los que se hara con precisin sencilla, doble precisin o aritmtica de enteros. Conversiones incorrectas. Si el argumento expression transferido a la funcin est fuera del intervalo de valores del tipo de datos al que se va a convertir, se inicia una excepcin OverflowException. Partes fraccionarias. Cuando un valor no integral se convierte a un tipo entero, las funciones de conversin de enteros (CByte, CInt, CLng, CSByte, CShort, CUInt, CULng y CUShort) quitan la parte fraccionaria y redondean el valor al entero ms prximo. Si la parte fraccionaria es exactamente 0,5, las funciones de conversin de enteros lo rodean al entero par ms prximo.Por ejemplo, 0,5 se redondea a 0 y 1,5 y 2,5 se redondean a 2.Esto se denomina redondeo bancario a veces y su propsito es compensar una tendencia que se podra acumular al sumar muchos de estos nmeros. CInt y CLng difieren de las funciones Int y Fix, en que, en lugar de redondear, truncan la parte fraccionaria de un nmero.Adems, Fix e Int siempre devuelven un valor del mismo tipo de datos que reciben.

Conversiones de fecha y hora. Utilice la funcin 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 numricos.Para convertir un valor Date de Visual Basic 6.0 en un valor Date en Visual Basic 2005 o versiones posteriores, puede utilizar el mtodo DateTime.FromOADate. Valores de fecha u hora neutrales. El tipo de datos Date (Tipo de datos, Visual Basic) contiene siempre informacin de fecha y hora.Para la conversin de tipos, Visual Basic considera 1/1/0001 (1 de enero del ao 1) un valor neutral de fecha y 00:00:00 (medianoche) un valor neutral de hora.Si se convierte un valor Date a una cadena, CStr no incluye valores neutrales en la cadena resultante.Por ejemplo, si se convierte #January 1, 0001 9:30:00# en una cadena, el resultado sera "9:30:00 a.m.", ya que la informacin de fecha se omite.Sin embargo, la informacin de fecha permanece presente en el valor de Date original y se puede recuperar mediante funciones como DatePart. Distincin de referencias culturales. Las funciones de conversin de tipos que implican cadenas realizan las conversiones en funcin de la configuracin de la referencia cultural actual de la aplicacin.Por ejemplo, CDate reconoce formatos de fecha de acuerdo con la configuracin regional del sistema.Debe suministrar el da, mes y ao en el orden correcto para la configuracin regional; de no hacerlo as, es posible que la fecha no se interprete de forma correcta.No se puede reconocer un formato de fecha largo si contiene la cadena del da de la semana, por ejemplo Mircoles. Si necesita convertir una representacin de cadena de un valor en un formato diferente al especificado por la configuracin regional, no puede utilizar las funciones de conversin de tipos de Visual Basic.Para ello, utilice los mtodos ToString(IFormatProvider) y Parse(String, IFormatProvider) de ese tipo de valor.Por ejemplo, utilice Double.Parse cuando convierte una cadena a un valor de tipo Double y utilice Double.ToString cuando convierta un valor de tipo Double en una cadena.

CType (Funcin)

La funcin CType toma un segundo argumento, typename, y convierte expression en typename, donde typename puede ser cualquier tipo de datos, estructura, clase o interfaz para la que exista una conversin vlida. Para una comparacin de CType con las otras palabras clave de conversin de tipos, vea DirectCast (Operador) (Visual Basic) y TryCast (Operador) (Visual Basic).

Ejemplo de la funcin CBool


En este ejemplo se utiliza la funcin CBool para convertir expresiones en valores Boolean.Si una expresin se evala en un valor distinto de cero, CBool devuelve True; en caso contrario, devuelve False. VB Copiar

Dim a, b, c As Integer Dim check As Boolean a = 5 b = 5 ' The following line of code sets check to True. check = CBool(a = b) c = 0 ' The following line of code sets check to False. check = CBool(c)

Ejemplo de la funcin CByte


En este ejemplo se utiliza la funcin CByte para convertir expresiones en Byte. VB Copiar

Dim aDouble As Double Dim aByte As Byte aDouble = 125.5678 ' The following line of code sets aByte to 126. aByte = CByte(aDouble)

Ejemplo de la funcin CChar


En el ejemplo siguiente se utiliza la funcin CChar para convertir el primer carcter de una expresin String en un tipo Char. VB Copiar

Dim aString As String

Dim aChar As Char ' CChar converts only the first character of the string. aString = "BCD" ' The following line of code sets aChar to "B". aChar = CChar(aString)

El argumento de entrada para CChar debe pertenecer al tipo de datos Char o String.No puede utilizar CChar para convertir un nmero en un carcter, porque CChar no acepta un tipo de datos numricos.En el ejemplo siguiente se obtiene un nmero que representa un punto de cdigo (cdigo de carcter) y se convierte al carcter correspondiente.En el ejemplo se utiliza la funcin InputBox para obtener la cadena de dgitos, CInt para convertir la cadena en el tipo Integer y ChrW para convertir el nmero en el tipo Char. 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 funcin CDate


En este ejemplo se utiliza la funcin CDate para convertir cadenas en valores Date.En general, no se recomienda especificar las fechas y horas como cadenas en el cdigo, tal y como se puede ver en este ejemplo.Utilice literales de fecha y hora, por ejemplo #Feb 12, 1969# y #4:45:233 p.m.#. VB Copiar

Dim aDateString, aTimeString As String Dim aDate, aTime As Date aDateString = "February 12, 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. aTime = CDate(aTimeString)

Ejemplo del algoritmo CDbl


VB Copiar

Dim aDec As Decimal Dim aDbl As Double ' The following line of code uses the literal type character D to make aDec a Decimal. aDec = 234.456784D ' The following line of code sets aDbl to 1.9225456288E+1. aDbl = CDbl(aDec * 8.2D * 0.01D)

Ejemplo de la funcin CDec


En el siguiente ejemplo se utiliza la funcin CDec para convertir un valor numrico en Decimal. VB Copiar

Dim aDouble As Double Dim aDecimal As Decimal aDouble = 10000000.0587 ' The following line of code sets aDecimal to 10000000.0587. aDecimal = CDec(aDouble)

Ejemplo de la funcin CInt


En este ejemplo se utiliza la funcin CInt para convertir un valor a Integer. VB Copiar

Dim aDbl As Double Dim anInt As Integer aDbl = 2345.5678 ' The following line of code sets anInt to 2346. anInt = CInt(aDbl)

Ejemplo del algoritmo CLng


En el ejemplo siguiente se utiliza la funcin CLng para convertir valores a Long. VB Copiar

Dim aDbl1, aDbl2 As Double Dim aLng1, aLng2 As Long aDbl1 = 25427.45 aDbl2 = 25427.55 ' The following line of code sets aLng1 to 25427.

aLng1 = CLng(aDbl1) ' The following line of code sets aLng2 to 25428. aLng2 = CLng(aDbl2)

Ejemplo de la funcin CObj


En el siguiente ejemplo se utiliza la funcin CObj para convertir un valor numrico en Object.La variable Object en s contiene slo un puntero de cuatro bytes, que seala al valor Double que tiene asignado. VB Copiar

Dim aDouble As Double Dim anObject As Object aDouble = 2.7182818284 ' The following line of code sets anObject to a pointer to aDouble. anObject = CObj(aDouble)

Ejemplo de CSByte
En el siguiente ejemplo se utiliza la funcin CSByte para convertir un valor numrico en SByte. VB Copiar

Dim aDouble As Double Dim anSByte As SByte aDouble = 39.501 ' The following line of code sets anSByte to 40. anSByte = CSByte(aDouble)

Ejemplo de la funcin CShort


En el siguiente ejemplo se utiliza la funcin CShort para convertir un valor numrico en Short. VB Copiar

Dim aByte As Byte Dim aShort As Short aByte = 100 ' The following line of code sets aShort to 100. aShort = CShort(aByte)

Ejemplo del algoritmo CSng


En el ejemplo siguiente se utiliza la funcin CSng para convertir valores a Single. VB Copiar

Dim aDouble1, aDouble2 As Double Dim aSingle1, aSingle2 As Single aDouble1 = 75.3421105 aDouble2 = 75.3421567 ' The following line of code sets aSingle1 to 75.34211. aSingle1 = CSng(aDouble1) ' The following line of code sets aSingle2 to 75.34216. aSingle2 = CSng(aDouble2)

Ejemplo del algoritmo CStr


En el siguiente ejemplo se utiliza la funcin CStr para convertir un valor numrico en String. VB Copiar

Dim aDouble As Double Dim aString As String aDouble = 437.324 ' The following line of code sets aString to "437.324". aString = CStr(aDouble)

En el ejemplo siguiente se utiliza la funcin CStr para convertir valores Date en valores String. VB Copiar

Dim aDate As Date Dim aString As String ' The following line of code generates a COMPILER ERROR because of invalid format. ' aDate = #February 12, 1969 00:00:00# ' Date literals must be in the format #m/d/yyyy# or they are invalid. ' 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. ' The following line of code sets aString to "2/12/1969". aString = CStr(aDate) ' The following line of code sets the time component of aDate to one second past midnight. aDate = #2/12/1969 12:00:01 AM# ' The time component becomes part of the converted value. ' The following line of code sets aString to "2/12/1969 12:00:01 AM".

aString = CStr(aDate)

CStr siempre representa un valor Date en el formato corto estndar de la configuracin regional actual, por ejemplo, "15/6/2003 4:35:47 p.m.".Sin embargo, CStr suprime los valores neutrales 1/1/0001 para la fecha y 00:00:00 para la hora. Para obtener informacin detallada sobre los valores devueltos por CStr, vea Valores devueltos para la funcin CStr (Visual Basic).

Ejemplo de CUInt
En el siguiente ejemplo se utiliza la funcin CUInt para convertir un valor numrico en UInteger. VB Copiar

Dim aDouble As Double Dim aUInteger As UInteger aDouble = 39.501 ' The following line of code sets aUInteger to 40. aUInteger = CUInt(aDouble)

Ejemplo de CULng
En el siguiente ejemplo se utiliza la funcin CULng para convertir un valor numrico en ULong. VB Copiar

Dim aDouble As Double Dim aULong As ULong aDouble = 39.501 ' The following line of code sets aULong to 40. aULong = CULng(aDouble)

Ejemplo de CUShort
En el siguiente ejemplo se utiliza la funcin CUShort para convertir un valor numrico en UShort. VB Copiar

Dim aDouble As Double Dim aUShort As UShort aDouble = 39.501

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

S-ar putea să vă placă și