malloc y realloc en C: ejercicio resuelto con array dinámico
malloc y realloc en C: ejercicio resuelto
Si buscas malloc y realloc en C ejercicio resuelto, aquí tienes un ejemplo típico de array dinámico con crecimiento por capacidad.
Enunciado
Implementa un array dinámico de enteros en C que:
- empiece con capacidad 4,
- inserte 8 valores,
- duplique capacidad con
realloccuando se quede sin espacio.
Solución en C
Salida esperada
Errores frecuentes
- Sobrescribir el puntero original con
reallocsin usar puntero temporal. - No comprobar
NULLenmallocyrealloc. - Olvidar
freeal final.
Aplicación práctica
Este patrón se usa en listas dinámicas, buffers y estructuras de datos que crecen en tiempo de ejecución.
Siguiente ejercicio recomendado
- malloc y free en C: ejercicios resueltos
- Punteros en C: ejercicios resueltos
- Struct en C: ejercicio resuelto
Práctica guiada y libro completo
Si quieres una ruta completa con progresión real de dificultad:
FAQ
¿Cuándo usar realloc en C?
Cuando necesitas redimensionar memoria ya reservada sin copiar manualmente bloque a bloque.
¿Es seguro hacer v = realloc(v, ...) directamente?
No es lo ideal. Usa un temporal para no perder la referencia original si falla.
¿Qué estrategia de crecimiento conviene?
Duplicar capacidad suele ser una estrategia práctica y eficiente para inserciones sucesivas.