filenode* getfilesname(char *dir, int *pno)
{
DIR *dir_prt;
struct dirent *entry;
struct filelist start = {{0}, NULL};
struct filelist *filesnod;
filesnod = &start;
*pno = -2;
dir_prt = opendir(dir);
if(!dir_prt)
{
return NULL;
}
while(NULL != (entry = readdir(dir_prt)))
{
filesnod->next = (struct filelist *)malloc(sizeof(filenode));
filesnod = filesnod->next;
strcpy(filesnod->filename, entry->d_name);
filesnod->next = NULL;
(*pno)++;
}
closedir(dir_prt);
filesnod = start.next;
if(0 == filesnod->filename[0])
{
return NULL;
}
return filesnod;
}