[C con Clase] [Bulk] Re: Problema con puntero a puntero char

zelion zelion_cracking en yahoo.es
Mar Oct 23 19:20:36 CEST 2007


Al final del correo existe un link para darse de baja.

 

De: cconclase-bounces en listas.conclase.net
[mailto:cconclase-bounces en listas.conclase.net] En nombre de Jose E. Figueroa
Enviado el: martes, 23 de octubre de 2007 16:29
Para: Lista de correo sobre C y C++
Asunto: [Bulk] Re: [C con Clase] Problema con puntero a puntero char

 

Por Favor...quitenme de la lista de sus correos electronicos. Por el
momento...gracias.

On 10/18/07, Ariel Romero <aromero en cenatav.co.cu> wrote: 

Hola a todos:

Soy nuevo en C y quiero hacer una funcion que abra un directorio
determinado y devuelva la lista de ficheros de primer nivel que existen 
en él. Esto fue lo que hice:


#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <dirent.h>
#include <errno.h>

   char** listFilesFromDirectory(char* directory){ 
       DIR *dip;
       struct dirent   *dit;
       int             i = 0;
       char** filesListFromDirectory;

       if ((dip = opendir(directory)) == NULL){
           perror("opendir"); 
           return NULL;
           }

       printf("Directory stream is now open\n");

       filesListFromDirectory = malloc(1);
       while ((dit = readdir(dip)) != NULL){
           filesListFromDirectory[i]= malloc(sizeof(dit->d_name)); 
           strcpy(filesListFromDirectory[i],dit->d_name);
           i++;
           }
       filesListFromDirectory[i]= malloc(1);
       filesListFromDirectory[i]="end";
       int var;

       if (closedir(dip) == -1){
           perror("closedir");
           return 0;
           }
       return filesListFromDirectory;
   }

despues en el main para probar y listar los ficheros hago esto: 

int main(int argc, char **argv) {
   char** list; //= malloc(1);
   list = listFilesFromDirectory("res");
   int var = 0;
   while (list[var]!=NULL) {
       puts(list[var]);
       var++; 
   }
   return EXIT_SUCCESS;
}

Pero no sé que sucede que me da error, alguien sabe como hacerlo bien,
espero que me pueda ayudar.
saludos

_______________________________________________
Lista de correo Cconclase Cconclase en listas.conclase.net
http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net 
Bajas: http://listas.conclase.net/index.php?gid=2
<http://listas.conclase.net/index.php?gid=2&mnu=FAQ> &mnu=FAQ

 

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20071023/396eb105/attachment.html>


Más información sobre la lista de distribución Cconclase