Macros y funciones inline
Explore las definiciones de macros y sus ventajas frente a las funciones
Macros y funciones inline es una lección gratuita de C Academy en CoddyKit. Esta es la lección 2 de 3. 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 3 lecciones en total.
Introducción a las macros
Macros y funciones inline
Las macros y las funciones inline ayudan a optimizar el código al reducir la sobrecarga de las llamadas a funciones.
En esta lección, aprenderá:
- Cómo definir y usar macros.
- Las ventajas de las funciones inline frente a las macros.
- Cómo las macros y las funciones inline mejoran el rendimiento.

¿Qué es una macro?
¿Qué es una macro?
Una macro es una directiva del preprocesador que reemplaza código antes de la compilación.
Ejemplo:
#define SQUARE(x) (x * x)
Durante la compilación, SQUARE(5) se reemplaza por (5 * 5).
Ejemplo: usar macros
Ejemplo: usar macros
Este programa muestra cómo usar una macro para realizar cálculos.
#include <stdio.h>
#define SQUARE(x) (x * x)
int main() {
int num = 4;
printf("Square of %d is %d\n", num, SQUARE(num));
return 0;
}Limitaciones de las macros
Limitaciones de las macros
Las macros no realizan comprobación de tipos y pueden producir resultados inesperados.
Ejemplo del problema:
#define MULTIPLY(x, y) x * y
La llamada MULTIPLY(2 + 3, 4) se expande a 2 + 3 * 4, lo que produce un resultado incorrecto.
Introducción a las funciones inline
Introducción a las funciones inline
Las funciones inline ofrecen una alternativa a las macros y mantienen la seguridad de tipos.
Sintaxis:
inline int square(int x) { return x * x; }
Reducen la sobrecarga de las llamadas a funciones y garantizan una comprobación de tipos adecuada.
Ejemplo: usar funciones inline
Ejemplo: usar funciones inline
Este programa muestra cómo reemplazar una macro por una función inline.
#include <stdio.h>
inline int square(int x) { return x * x; }
int main() {
int num = 4;
printf("Square of %d is %d\n", num, square(num));
return 0;
}Ventajas de las funciones inline
Ventajas de las funciones inline
Las funciones inline ofrecen varias ventajas frente a las macros:
- Seguridad de tipos.
- Depuración más sencilla (aparecen en los seguimientos de la pila).
- No producen errores de expansión inesperados.
Cuándo usar macros o funciones inline
Cuándo usar macros o funciones inline
Use macros cuando necesite:
- Definir constantes sencillas.
- Realizar sustituciones de texto menores.
Use funciones inline cuando necesite:
- Realizar operaciones complejas.
- Garantizar la seguridad de tipos.
Resumen
Resumen
En esta lección, ha aprendido:
- Cómo definir y usar macros.
- Las limitaciones de las macros.
- Cómo las funciones inline ofrecen una alternativa más segura.
A continuación, exploraremos la compilación condicional.

Preguntas frecuentes
¿La lección «Macros y funciones inline» es gratis?
Sí — el texto completo de «Macros y funciones inline» 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 3 lecciones en total.
¿Qué aprenderé en «Macros y funciones inline»?
Explore las definiciones de macros y sus ventajas frente a las funciones 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 2 de 3.
¿Cuánto tiempo toma la lección «Macros y funciones inline»?
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
- Comprensión del preprocesador de C
- Macros y funciones inline
- Compilación condicional