Fonction index en C

Résolu/Fermé
crazyghandi Messages postés 312 Date d'inscription vendredi 9 novembre 2007 Statut Membre Dernière intervention 4 octobre 2011 - 20 oct. 2008 à 12:07
crazyghandi Messages postés 312 Date d'inscription vendredi 9 novembre 2007 Statut Membre Dernière intervention 4 octobre 2011 - 20 oct. 2008 à 13:14
Bonjour,

Je voudrais savoir si on peu renvoyer le nombre de caracteres trouve grace a la fonction index

par exemple

int y = index(str,tiret);

pr zer-ertytry on a y=1
pr qsf-hteh-thth on a y=2
pr qsd-fsg-fgh-jk:- on a y=4


etc

merci d'avance

3 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
20 oct. 2008 à 12:17
La fonction index ne renvoie pas le nombre d'éléments mais renvoie un pointeur sur la première occurrence.
Si tu veux le nombre de tirets dans une chaîne, tu peux te le coder facilement avec une petite boucle for ;)
Cdlt
-1
crazyghandi Messages postés 312 Date d'inscription vendredi 9 novembre 2007 Statut Membre Dernière intervention 4 octobre 2011 19
20 oct. 2008 à 12:58
oui me comment parcourir les lettres d'une chaine?

parce que j'essaie un truc du genre

for (i<x){
if (index(str[i],c){
y++
}
}

mais le compilateur naccepte pas str[i]
-1
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 844
20 oct. 2008 à 13:08
Essaie
#include <stdio.h>
#include <string.h>

int main(void){
   char chaine[]="aa-bb-cc-dd-ee-ff";
   int i;
   int nbTirets;
   for(i=0;i<strlen(chaine);i++)
       if(chaine[i]=='-') nbTirets++;
   printf("nb=%d\n",nbTirets);
   return 0;
}
-1
crazyghandi Messages postés 312 Date d'inscription vendredi 9 novembre 2007 Statut Membre Dernière intervention 4 octobre 2011 19
20 oct. 2008 à 13:14
ca marche nikel merci beaucoup

a bientot pr dautres solutions
-1