Za zadanie mam porównać wzorzec z łańcuchem. W wzorcu znak '?' znaczy dowolny znak a '*' dowolny ciąg znaków i zwrócić true lub false. Np:
ab??ca = abzzca
ta*ab=tazzzzzab
Problem pojawia się gdy jest do porównania:
ab*ab = abaaab.
Program po prostu bierze od razu kolejne 'a' i porownuje zamiast przeskoczyc do 'ab'.
Ukryta treść:
Kod: Zaznacz cały
case '*': //jak x dowolnych, to szukamy pierwszego znaku takiego jak następny po *
while ((Pos_chain < strlen(chain)) && (chain[Pos_chain] != module[Pos_mod + 1]))
Pos_chain++;
break;