#include
#include
#include
#include
#include
#include
#include
int is_in(char *s, char *c);
int main(int argc, char *argv[])
{
char prefix[] = “enter your string”;
char filepath[] = “enter your path”;
DIR *directory_pointer;
struct dirent *entry;
if((directory_pointer=opendir(filepath))==NULL)
printf( “Error opening \n “);
else
{
while((entry=readdir(directory_pointer))!=NULL)
{
if(is_in(entry->d_name,prefix)==1){
//printf(”%s\n”,entry-> d_name);
strcat(filename, filepath);
strcat(filename, entry->d_name);
printf(“%s\n”,filename);
}
}
closedir(directory_pointer);
}
return 0;
}
int is_in(char *s, char *c)
{
int i=0,j=0,flag=-1;
while(i
if(s[I] == c[j]){
i++;
j++;
}
else{
i=i-j+1;
j=0;
}
if(j==strlen( c )){
flag=1;
break;
}
}
return flag;
}
用一个is_in函数来比较指定字符串是否包含在文件名内,打印出符合条件的文件名即可。