SALUT, UNE FONCTION DE RECHERCHES DE SOUS CHAINES

Signaler
Messages postés
14
Date d'inscription
jeudi 12 décembre 2002
Statut
Membre
Dernière intervention
9 avril 2005
-
Messages postés
14
Date d'inscription
jeudi 12 décembre 2002
Statut
Membre
Dernière intervention
9 avril 2005
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/16748-salut-une-fonction-de-recherches-de-sous-chaines

Messages postés
14
Date d'inscription
jeudi 12 décembre 2002
Statut
Membre
Dernière intervention
9 avril 2005

Merci aardman d avoir repondu si vite :).
++.
Messages postés
1905
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
17 septembre 2012
3
Salut,
strstr() selon moi, c'est:
- un pointeur qui avance sur la 1ere chaine.
- S'il rencontre un octet egal au 1er octet de la chaine a chercher, il compare les 2 chaines.
- Si les 2 chaines sont egales, il retourne un pointeur vers l'occurence de cette chaine dans la 1ere chaine.
- Sinon, il continue d'avancer jusqu'au 0 final.

Je traduirais ca en C par une condition if() dans un while() pour detecter si le 1er octet est identique et boucler, et une bouclette while() pour comparer les 2 chaines.
Messages postés
14
Date d'inscription
jeudi 12 décembre 2002
Statut
Membre
Dernière intervention
9 avril 2005

Merci D1m3x et aardman pour vos commentaires.
La fonction strstr(); serait plus simple que ma fonction? :)
Merci.
Messages postés
1905
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
17 septembre 2012
3
Salut,
txt dans le code est a la base un char*, donc un cast suffit:
return (char*)(txt + i - p_len);
Pour ce qui en est du code, je le trouve assez compliqué, surtout pour une fonction simple comme strstr().
Afficher les 6 commentaires