Autor
|
Tema: [C] Explicación de cómo hacer arreglos multidimensionales dinámicos (Leído 2,206 veces)
|
eenube
|
Hola a todos. He escrito este pequeño ejemplo de cómo escribir arreglos dinámicos con varias dimensiones. Espero les sirva. #include <stdlib.h> #define FREE(p) do { free(p); (p) = NULL; } while(0) int **alloc_array(int, int); void free_array(int **, int); int **alloc_array(int x_size, int y_size) { int i; int **array; array = malloc(x_size * sizeof(int *)); if(array == NULL) { return NULL; } for(i = 0; i < x_size; i++) { array [i ] = malloc(y_size * sizeof(int)); if(array[i] == NULL) { return NULL; } } return array; } void free_array(int **array, int x_size) { int i; for(i = 0; i < x_size; i++) FREE(array[i]); FREE(array); }
http://eenube.com/index.php/ldp/c/18-arreglos-dinamicos-multidimensionales-en-cMOD EDIT: Usar etiquetas GeSHi.
|
|
« Última modificación: 15 Marzo 2016, 03:24 am por MCKSys Argentina »
|
En línea
|
Mi blog de programación, software libre, matemáticas y diseño gráfico libre. Espero les guste. http://eenube.com
|
|
|
MAFUS
Desconectado
Mensajes: 1.603
|
Está bien, pero debes retocar una cosa: Cuando vas a inicializar las columnas, y, y una de estas inicializaciones falla retornas NULL y regresas, pero esto te crea pérdida de memoria: todos los punteros anteriormente inicializados desaparecerán al salir de la función, pero su memoria seguirá adquirida.
P.ej.: Si la última inicialización de y falla pedrerás la memoria del array principal, x, y de cada una de las ys, menos la última que ha fallado.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Problema con Arrays dinámicos multidimensionales con dictionary
.NET (C#, VB.NET, ASP)
|
WHK
|
3
|
2,842
|
12 Julio 2013, 21:34 pm
por WHK
|
|
|
Arreglos Multidimensionales y ordenamiento
.NET (C#, VB.NET, ASP)
|
DanielPy
|
1
|
2,382
|
26 Agosto 2013, 19:10 pm
por DanielPy
|
|
|
necesito una explicacion del como hacer el siguiente programa en dev c por favor
Dudas Generales
|
ulysses117
|
2
|
2,431
|
2 Mayo 2014, 03:49 am
por dRak0
|
|
|
ayuda clases/arreglos dinamicos c++
Programación C/C++
|
johnnyd77
|
0
|
2,349
|
1 Octubre 2016, 23:16 pm
por johnnyd77
|
|
|
no se como hacer una función correctamente con arreglos
Programación C/C++
|
condor7000
|
5
|
2,973
|
6 Diciembre 2016, 23:45 pm
por jvm1994
|
|