cs_GazGaz
Messages postés31Date d'inscriptionmardi 4 février 2003StatutMembreDernière intervention14 juin 2003
-
14 juin 2003 à 17:50
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019
-
14 juin 2003 à 18:22
bonjour
j'ai un bout de code qui me permet de chercher un caractere dans une phrase. Ce code me renvoie l'emplacement du premier carcactere.
ex : "yop<12><152454><G>"action1"poy<12>215151><H>"
la il va me sortir 0 si je cherche le ".
et je voudrait savoir comment faire pour rechercher le " n°2 ou 3.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 14 juin 2003 à 18:01
tu connais les pointeurs ?
tu en promenes un le long de ta string tant que != 0.
exemple:
char* PosTrouve(char *pszstr, char *pdeb, int val);
doit retourner 0 si non trouve.
au 1er coup tu appelles:
char *c;
char szbuff[64]; // ta string dedans
c = PosTrouve(szbuff, szbuff, 65); // cherche 'A'
while(c) {
// ce que tu dois faire
c = PosTrouve(szbuff, c, 65);
}
voila pour du va vite, y aurait tant d'autres moyens.
BruNews, ciao...
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 14 juin 2003 à 18:22
bon on va garder le strchr:
tu as :
char *string; // contient ta chaine
char *ptr;
alors tu initialises:
ptr = string;
while(ptr = strchr(ptr,c)) {
// tu peux traiter ptr
// si non trouve est deja sorti
// bouclera tant que trouvera suivant
}