bonjour
Je dois faire un vérificateur html en C et j’ai un souci avec ma fonction de recherche.
printf("Chaine a rechercher : ");
fgets(chaine_recherche, LONGUEUR_CHAINE, stdin);// attention \n avant \0
// suppression du dernier caractère : \n
chaine_recherche[strlen(chaine_recherche)-1]='\0';
rewind(stdin);
//remise à zero du curseur
rewind(fichier);
while (fgets(chaine, LONGUEUR_CHAINE, fichier) != NULL) // On lit le fichier tant qu'on ne reçoit pas d'erreur (NULL)
{
suiteChaine = strstr (chaine, chaine_recherche);
}
if (suiteChaine != NULL)
{
printf("Voici la fin de la chaine a partir du premier des caracteres trouves : ");
puts(suiteChaine);
//system("pause");
}
else if (suiteChaine == NULL)
printf("Aucun mot de votre recherche correspond\n\n");
}
En effet, la recherche ne s’effectue que sur la dernière chaine de caractère lue par le programme mais par sur lesprécédentes, de ce fait le programme ne trouve comme balise que (pas de , de , …)
Est ce que quelqu’un sait pourquoi ??
Merci d’avance !