Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/12/2012, 13:43
gonzo13
 
Fecha de Ingreso: agosto-2008
Mensajes: 240
Antigüedad: 16 años, 2 meses
Puntos: 6
Crear tabla multidimensional dinámicamente dentro de una función

Hola,

tengo definido el código que construye, en C y correctamente, una tabla multidimensional de cadenas de forma dinámica usando malloc. Ahora mi problema es que quiero llevarme ese código a otra función auxiliar para ganar en legibilidad del código pero no lo consigo.

El código que quiero trasladar es el siguiente:

Código C:
Ver original
  1. #define NUM 2
  2. #define TAM 3
  3. #define NOMBRE "nombre"
  4.  
  5. char ** nombres = NULL;
  6. int error = 0;
  7.  
  8. nombres = ( char ** ) malloc ( NUM * sizeof ( char * ) );
  9.  
  10. if ( nombresLigas != NULL )
  11.   {
  12.  
  13.       for ( i = 0; (i < NUM_LIGAS) && (error = 0); i++ )
  14.         {
  15.             nombres[i] = ( char * ) malloc ( ( TAM + 1 ) * sizeof ( char ) );
  16.             if(nombres[i] != NULL)
  17.             {
  18.                strcpy(nombres[i], NOMBRE);
  19.                printf ( "Nombre: %s \n", nombres[i] );
  20.             }
  21.             else
  22.             {
  23.                error = 1;
  24.             }
  25.          }
  26.   }

Además, si quiero usar nombres distintos para cada espacio generado, ¿debería usar un enumerado?

Muchas gracias,
gonzo