Compter et extraire des mots : I NEED HELP !!!!!

ben01n Messages postés 65 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 4 août 2010 - 3 juin 2003 à 14:39
Trinita16 Messages postés 199 Date d'inscription lundi 22 juillet 2002 Statut Membre Dernière intervention 14 juin 2006 - 4 juin 2003 à 13:51
salut
j'ai une variable "buf" qui contient une phrase saisie par l'utilisateur
je voudrais compter le nombre de mots puis les extraires un par un pour les mettre dans un tableau de taille correspondante au nombre de mots
je developpe sous linux et les trucs que j'ai trouvé sur le site ne m'aide pas beaucoup
si quelqu'un a une petite source qui traine.....
merci d'avance
@+

8-) Ben01n 8-)

7 réponses

cs_payen Messages postés 252 Date d'inscription mercredi 25 octobre 2000 Statut Membre Dernière intervention 1 mai 2005
3 juin 2003 à 15:46
tu peux pas faire la methode bourrin??? parcoures ta chaine caractere par caractere et compare la valeur traitee avec un caractere comme espace ou virgule (strcmp(...) ). si tu tombes sur un de ces caracteres, alors tu incrementes un compteur de mots ...
ca irait ca???
0
ben01n Messages postés 65 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 4 août 2010
3 juin 2003 à 15:59
c'est une possibilité mais c'est (comme tu dis) une methode bourrin
je préfèrerais une mathode plus clean

8-) Ben01n 8-)
0
Trinita16 Messages postés 199 Date d'inscription lundi 22 juillet 2002 Statut Membre Dernière intervention 14 juin 2006
3 juin 2003 à 16:28
Essai plutot d'utiliser la commande strtok en detectant les caracteres de type espace....

c'est moins "bourrin" :)

@+
Trinita,
0
cs_payen Messages postés 252 Date d'inscription mercredi 25 octobre 2000 Statut Membre Dernière intervention 1 mai 2005
3 juin 2003 à 16:35
cela dit, comme l'a fait remarquer kaid ce matin, avec un P4 a 2.5GHz, je pense que tu peux te permettre ce genre de chose, surtout si tu n'as qu'une seule chaine a traiter ...
voila ce que j'en dis ...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_payen Messages postés 252 Date d'inscription mercredi 25 octobre 2000 Statut Membre Dernière intervention 1 mai 2005
3 juin 2003 à 16:39
oui oui, trinita a bien raison, strtok semble bien adapte. l'exemple du msdn sera parfait pour toi : http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wcecrt/htm/_wcecrt_strtok_wcstok.asp
0
ben01n Messages postés 65 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 4 août 2010
4 juin 2003 à 08:56
merci pour toutes ces réponses
mais quelqu'un pourrait il me passer une source pour faire ce que je voudrais car même avec la msdn je n'y arrive pas
je sais je suis nul mais il y a un début à tout même à la prog (perso ça fait 2 semaines que j'ai commencé le C)

8-) Ben01n 8-)
0
Trinita16 Messages postés 199 Date d'inscription lundi 22 juillet 2002 Statut Membre Dernière intervention 14 juin 2006
4 juin 2003 à 13:51
tiens voila un exemple :

#include <string.h>

char *pointeur;
char *separateur = { " " }; // le separateur
char *buffer;
char *chaine_depart;
char *chaineretour;

buffer = strdup ( chaine_depart);

// premier appel
pointeur = strtok( buffer, separateur );
strcpy ( chaineRetour, pointeur );

// La boucle pour le reste
while( pointeur != NULL )
{

// Cherche les autres separateur
pointeur = strtok( NULL, separateur );
if ( pointeur != NULL )
{
// les autres mots
strcat ( NewChaineDate, pointeur );
}
}

si tu a des pbs contacts moi et explique moi en détails ce que tu veux je pourrais alors te le faire autrement ton prog....

Bon courage :)

Trinita,
0
Rejoignez-nous