[C con Clase] Problema con puntero a puntero char

Jose E. Figueroa josefigueroa200200733 en gmail.com
Mar Oct 23 16:29:10 CEST 2007


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&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/7f30d0cc/attachment.html>


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