Está en la página 1de 2

C: Conversiones de tipo (casting) en C...

El casting o simplemente cast nos permite hacer una conversión explícita de un tipo de
dato a otro, a criterio del programador siempre y cuando estos tipos sean compatibles.

Este cast se realiza a través de un operador de conversión de tipos (type casting operator)
y es un recurso a tener en cuenta ya que hay situaciones en que nos puede resultar de gran
utilidad.

Hacer uso de un cast es tan sencillo como poner (tipo de dato) delante de la expresión o
variable a convertir.

Veamos un ejemplo:

Declaramos una variable de tipo int con un identificador tan creativo como "a" y le
realizamos diferentes cast a a para mostrarlo como si fuera un float, un double y un char en
un printf. Lo que obtendríamos en pantalla sería lo siguiente:

Donde tenemos el valor de nuestro a, a convertido en float y double (mostrándolo con 3


cifras decimales) y a convertido en char. Si vemos este último caso, al hacer la conversión
de "a" a char toma a como el código ascii del char y lo muestra; en nuestro ejemplo 121 es
el ascii de la letra "y".

Esto puede hacerse con variables de otros tipos diferentes a int y obtendríamos resultados
similares mientras la conversión sea posible:

En pantalla veríamos lo siguiente:


Un ejemplo donde nos podría ser útil el uso de cast es para realizar la división entre dos int
manteniendo los decimales en el resultado. Para ello haríamos lo siguiente:

De esta manera obtendríamos como resultado 2.50 que es lo que buscábamos. Si no


haríamos el cast el resultado sería 2.00 ya que se pasaría a float el resultado de la división
entera de 5 en 2 que es 2.

Y así hay muchas situaciones en que podemos utilizarlo, como cuando lleguemos a C
avanzado donde haremos incluso cast a punteros para lograr cosas que normalmente no
podríamos hacer.

También podría gustarte