Anche se esistono già algoritmi di pattern matching estremamente efficienti come l'Algoritmo di Knuth-Morris-Pratt, penso che per esigenze didattiche una funzione di questo genere possa funzionare...
int match_string(char string[], char pattern[])
{
int i, j, k;
i=0;
while(string[i]!='\0')
{
j=i; k=0;
while( pattern[k]!='\0' && string[j]==pattern[k])
{
j++; k++;
}
if (k > 0 && pattern[k] == '\0')
return i;
i++;
}
return -1;
}