AD

¿Ya dominas lo básico? Un curso estructurado de C es la vía rápida para dar el salto.

Ver cursos de C en Udemy

Enlace de afiliado. No te cuesta nada extra.

🔧Lecciones de C
Lección 31 / 68

Conversión de tipos (casting), lo básico

En esta lección convertirás un valor de un tipo a otro de forma explícita.

Se escribe el tipo destino entre paréntesis delante del valor: (double)a / b. C también convierte solo en muchos casos, lo que se llama conversión implícita.

El código de ejemplo divide dos enteros obteniendo un resultado decimal.

Aquí está el error que más sorprende: 7 / 2 da 3, no 3,5. Al dividir dos enteros, C hace división entera y descarta el resto, y la conversión a double del resultado llega demasiado tarde. Hay que convertir antes de dividir, como en el ejemplo.

Las conversiones implícitas son la parte peligrosa: pasar de int a char descarta bits en silencio, y mezclar tipos con y sin signo produce comparaciones que dan al revés de lo esperado (-1 > 1u es cierto). Compilar con -Wall -Wextra hace visibles casi todos estos casos.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar C directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)