Chaines de caractères en C

Résolu/Fermé
TKAU Messages postés 15 Date d'inscription mercredi 28 janvier 2009 Statut Membre Dernière intervention 14 mars 2010 - 27 sept. 2009 à 20:07
 loupius - 29 sept. 2009 à 20:10
Bonjour à tous,
Je débute un peu en C, et je suis actuellement en train de réaliser un jeu de pendu en console d'après le tuto du Site du zero (https://openclassrooms.com/fr/courses/19980-apprenez-a-programmer-en-c/16828-tp-realisation-dun-pendu#ss_part_1).
Donc pour ce pendu, je dois comparer un caractère ( la lettre entré par l'utilisateur) à une chaine de caractère (le mot à trouver).
Je sais qu'il existe la fonction strchr ou strrchr pour trouver un caractère dans une chaine depuis le début ou la fin, mais voilà, s'il y a plusieurs fois le même caractère?
En effet, après, je dois afficher le mot comme ceci: ****u**il (les étoiles étant les lettres restant à trouver, les lettres affichées celles déjà trouvées)!
S'il y a plusieurs fois le même caractère dans un mot? Existe-il une fonction qui serve déjà à trouver un caractère dans une chaine et à compter le nombre d'apparitions?
Merci d'avance.

3 réponses

char* strchr (const char* chaine, int caractere);
Cette fonction renvoie un pointeur sur le caractère trouvé dans la chaîne; il suffit donc de relancer la recherche pour trouver le même caractère suivant et s'arrêter lorsque le pointeur renvoie NULL.
Bonne continuation.
1
TKAU Messages postés 15 Date d'inscription mercredi 28 janvier 2009 Statut Membre Dernière intervention 14 mars 2010 2
29 sept. 2009 à 19:49
Merci pour vos réponses!
J'aurais du penser tout de suite à faire une boucle.
Merci à Lilian pour les liens.
1
Eh oui, tu aurais dû... la vie n'est qu'une succession de regrets ! ;-)
Bonne soirée.
0
> d'après le tuto du Site du zero

Donc c'est fichu pour toi, tu ne sauras jamais programmer en C.
Lis le K&R ou Deitel si tu veux apprendre le C, pas cette infamie de pseudo-site commercial !
0