Type casting es una forma de convertir una variable de un tipo de datos a otro tipo de datos. Por ejemplo, si quieres almacenar un valor largo en un simple entero entonces puedes hacer un typecast de long a int. Puedes convertir valores de un tipo a otro explícitamente usando el operador cast. Hay dos tipos de cast de tipos en el lenguaje c que son Conversiones implícitas y Conversiones explícitas. En este artículo, también aprendemos sobre la diferencia entre el casting de tipo y las conversiones de tipo.
El nuevo tipo de datos debe ser mencionado antes del nombre de la variable o el valor entre paréntesis que será typecast.
Programa de ejemplo de conversión de tipos en C:
En el siguiente programa en C, 7/5 por sí solo producirá un valor entero como 1.
Por lo tanto, la conversión de tipos se realiza antes de la división para mantener el valor del flotador (1,4).
Salida:
1.400000
Convertir una expresión de un tipo dado en otro tipo se conoce como type casting. el typecasting es más utilizado en la programación del lenguaje c.
Aquí, es la mejor práctica para convertir un tipo de datos más bajo a un tipo de datos más alto para evitar la pérdida de datos.
Los datos se truncarán cuando el tipo de datos más alto se convierte en más bajo. Por ejemplo, si un float se convierte en int, los datos que están presentes después del punto decimal se perderán.
Hay dos tipos de type casting en el lenguaje c.
Tipos de typecasting en C
Conversión implícita
Las conversiones implícitas no requieren ningún operador para su conversión. Se realizan automáticamente cuando un valor se copia a un tipo compatible en el programa.
Aquí, el valor de a ha sido promovido de int a double y no hemos tenido que especificar ningún operador de fundición de tipo. Esto se conoce como una conversión estándar.
Ejemplo :-
Salida:-
el valor implícito es 20.
Conversión explícita
En el lenguaje C, muchas conversiones, especialmente las que implican una interpretación diferente del valor, requieren una conversión explícita. Ya hemos visto dos notaciones para la conversión explícita de tipos.
No se realizan automáticamente cuando se copia un valor a un tipo compatible en el programa.
Ejemplo :-
Salida:-
El valor explícito es 20.
Conversión aritmética habitual
Las conversiones aritméticas habituales se realizan implícitamente para fundir sus valores en un tipo común, C utiliza la regla de que en todas las expresiones, excepto en las asignaciones, cualquier conversión de tipo implícita realizada de un tipo de tamaño inferior a un tipo de tamaño superior, como se muestra a continuación:
Funciones de casteo de tipos incorporadas en C:
Hay muchas funciones de casteo de tipos incorporadas disponibles en el lenguaje C que realizan la conversión de tipos de datos de un tipo a otro.
Recientemente estamos haciendo una encuesta a diferentes programadores que están disponibles en las redes sociales de google plus. Hicimos una encuesta para el casting de tipo en el lenguaje c.
Diferencia entre el casting de tipo y la conversión de tipo
Cuando hay una necesidad de convertir un tipo de datos a otro los dos términos viene en nuestra mente «typecasting» y «conversión de tipo». Cuando los dos tipos son compatibles entre sí, entonces la conversión de un tipo a otro se hace automáticamente por el compilador que es la conversión de tipo frío, pero recuerda que podemos almacenar un tipo de datos grande en el otro, por ejemplo, no podemos almacenar un flotador en int porque un flotador es mayor que int. mientras que, typecasting se debe hacer explícitamente por el programador.