Funciones de conversión de tipos

Visual Basic VBLR

Funciones de conversión de tipos

       

Cada función convierte una expresión a un tipo de datos específico.

Sintaxis

CBool(expresión)

CByte(expresión)

CCur(expresión)

CDate(expresión)

CDbl(expresión)

CDec(expresión)

CInt(expresión)

CLng(expresión)

CSng(expresión)

CStr(expresión)

CVar(expresión)

El argumento obligatorio expresión es cualquier expresión de cadena o expresión numérica.

Tipos devueltos

El nombre de la función determina el tipo devuelto, como se muestra a continuación:

Función Tipo devuelto Intervalo del argumento expresión
CBool Boolean Cualquier expresión de cadena o numérica válida.
CByte Byte 0 a 255.
CCur Currency -922.337.203.685.477,5808 a 922.337.203.685.477,5807.
CDate Date Cualquier expresión de fecha.
CDbl Double -1.79769313486231E308 a
-4,94065645841247E-324 para valores negativos; 4,94065645841247E-324 a 1,79769313486232E308 para valores positivos.
CDec Decimal +/-79.228.162.514.264.337.593.543.950.335 para números basados en cero, es decir, números sin decimales. Para números con 28 decimales, el intervalo es
+/-7,9228162514264337593543950335. La menor posición para un número que no sea cero es 0,0000000000000000000000000001.
CInt Integer -32.768 a 32.767; las fracciones se redondean.
CLng Long -2.147.483.648 a 2.147.483.647; las fracciones se redondean.
CSng Single -3,402823E38 a -1,401298E-45 para valores negativos; 1,401298E-45 a 3,402823E38 para valores positivos.
CStr String El mismo intervalo que Double para valores numéricos. El mismo intervalo que String para valores no numéricos.
CVar Variant El valor de retorno de CStr depende del argumento expresión.

Comentarios

Si la expresión del argumento expresión que se pasa a la función está fuera del intervalo del tipo de dato al que se va a convertir, se produce un error.

En general, el código se puede documentar utilizando las funciones de conversión de tipos de datos para indicar que el resultado de alguna de las operaciones se debería expresar como un tipo de datos en particular, no como el tipo de datos predeterminado. Por ejemplo, utilice Ccur para forzar la ejecución de operaciones con aritmética monetaria en los casos en los que se haría con precisión simple, doble precisión o aritmética entera.

Debe utilizar funciones de conversión de tipos en lugar de Val para proporcionar conversiones que reconozcan las variantes internacionales. Por ejemplo, cuando utiliza CCur, se reconocen diferentes separadores decimales, diferentes separadores de millares y varias opciones monetarias dependiendo de la configuración regional establecida en su equipo.

Cuando la parte fraccionaria es exactamente 0,5, CInt y CLng siempre redondean al número par más cercano. Por ejemplo, 0,5 redondea a 0, y 1,5 redondea a 2. CInt y CLng se diferencian de las funciones Fix y Int en que truncan, en lugar de redondear, la parte fraccionaria de un número. Además, Fix y Int siempre devuelven un valor del mismo tipo del que se le pasa.

Utilice la función IsDate para determinar si se puede convertir date a una fecha o una hora. CDate reconoce literales de fecha y literales de hora además de números comprendidos dentro del intervalo de fechas aceptables. Al convertir un número a una fecha, la parte numérica entera se convierte a una fecha. Cualquier parte fraccionaria del número se convierte a la hora del día, comenzando a medianoche.

CDate reconoce formatos de fecha que se ajusten a la configuración regional de su sistema. Es posible que no se determine el orden correcto del día, mes y año si se proporciona en un formato diferente del que reconoce la configuración de fecha. Además, no se puede reconocer un formato de fecha largo si contiene la cadena del día de la semana.

Se proporciona una función CVDate por compatibilidad con versiones anteriores de Visual Basic. La sintaxis de la función CVDate es idéntica a la de la función CDate; sin embargo, CVDate devuelve un Variant de subtipo Date en lugar del tipo Date real. Puesto que ahora hay un tipo de dato intrínseco Date, no es necesario CVDate. Se puede observar el mismo efecto al convertir una expresión a Date y asignarla después a un Variant. Esta técnica es coherente con la conversión de todos los demás tipos intrínsecos a sus equivalentes subtipos Variant.

Nota   La función CDec no devuelve un tipo de dato discreto; en su lugar, siempre devuelve un Variant con los valores convertidos a un subtipo Decimal.