0Pricing
C Academy · Lección

Conversiones implícitas

Promociones automáticas

Conversiones implícitas es una lección gratuita de C Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de C Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de C Academy incluye 4 lecciones en total.

Qué es una conversión

Cuando C combina valores de tipos diferentes, convierte automáticamente uno al otro. Esto se denomina conversión implícita.

#include <stdio.h>
int main(void) {
    int i = 5;
    double d = i;
    printf("d = %.1f\n", d);
    return 0;
}

Promoción de enteros

Los tipos enteros pequeños, como char y short, se promocionan a int antes de realizar operaciones aritméticas.

#include <stdio.h>
int main(void) {
    char a = 10, b = 20;
    int sum = a + b;
    printf("sum = %d\n", sum);
    return 0;
}

Conversiones aritméticas habituales

En una expresión mixta, el operando de tipo más estrecho se convierte al tipo más amplio para que ambos coincidan antes de realizar la operación.

#include <stdio.h>
int main(void) {
    int i = 3;
    double d = 2.0;
    printf("%.1f\n", i + d);
    return 0;
}

De int a double

Un int asignado a un double se amplía de forma segura y conserva su valor exacto.

#include <stdio.h>
int main(void) {
    int count = 7;
    double avg = count;
    printf("avg = %.1f\n", avg);
    return 0;
}

De double a int: truncamiento

Asignar un double a un int elimina la parte fraccionaria. No se realiza ningún redondeo.

#include <stdio.h>
int main(void) {
    double d = 9.99;
    int n = d;
    printf("n = %d\n", n);
    return 0;
}

char e int

Un char contiene un entero pequeño, su código de carácter. Se convierte a int de forma natural.

#include <stdio.h>
int main(void) {
    char c = 'A';
    int code = c;
    printf("code = %d\n", code);
    return 0;
}

Conversiones en asignaciones

El lado derecho se convierte al tipo del lado izquierdo durante la asignación.

#include <stdio.h>
int main(void) {
    double pi = 3;
    printf("pi = %.1f\n", pi);
    return 0;
}

La sorpresa de la división mixta

5 / 2 es una división entera (2). Convierta uno de los operandos a double para obtener una división real.

#include <stdio.h>
int main(void) {
    printf("%.1f\n", 5 / 2.0);
    return 0;
}

Conversiones similares a booleanos

En las condiciones, cualquier valor distinto de cero se convierte en true y el cero en false.

#include <stdio.h>
int main(void) {
    int x = 3;
    if (x)
        printf("nonzero is true\n");
    return 0;
}

Conversión del valor de retorno

Un valor devuelto se convierte al tipo de retorno de la función. Devolver un double desde una función int lo trunca.

#include <stdio.h>
int half(int n) {
    return n / 2;
}
int main(void) {
    printf("%d\n", half(7));
    return 0;
}

Paso de argumentos

Los argumentos se convierten al tipo del parámetro cuando hay un prototipo visible.

#include <stdio.h>
void show(double d) {
    printf("%.1f\n", d);
}
int main(void) {
    show(5);
    return 0;
}

Comprobación rápida

Compruebe sus conocimientos sobre las conversiones implícitas.

Repaso: conversiones implícitas

Ha aprendido cómo se convierten automáticamente los tipos.

  • C convierte los operandos a un tipo común
  • Los enteros pequeños se promocionan a int
  • De int a double se amplía de forma segura
  • De double a int se trunca
  • La división entera puede producir resultados inesperados, a menos que uno de los operandos sea double

Preguntas frecuentes

¿La lección «Conversiones implícitas» es gratis?

Sí — el texto completo de «Conversiones implícitas» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de C Academy, actualiza a CoddyKit PRO. El curso de C Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Conversiones implícitas»?

Promociones automáticas Practicas C Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar C Academy?

No se requiere experiencia previa. C Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Conversiones implícitas»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de C Academy?

Sí. Cada lección de C Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Conversiones implícitas
  2. Conversiones explícitas
  3. Conversiones entre enteros y flotantes
  4. Errores en conversiones
← Volver a C Academy