Rechercher un mot dans une chaine de caractere [Résolu]

Signaler
Messages postés
5
Date d'inscription
dimanche 28 mars 2004
Statut
Membre
Dernière intervention
16 janvier 2007
-
Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
-
Bonsoir,
J'ai un petit programme à faire en C++ qui n'est pas très dur de prime abors. Le seul probleme est que je n'ai pas le droit d'utiliser de fonction de la classe string... Et la tout se complique
Explication du programme :
On lance le programme avec un parametre (un mot).
Le programme demande à l'utilisateur de saisir une phrase (sur plusieurs lignes).
On recupere chaque ligne une par une jusqu'a une ligne X qui contiendra le mot passé en parametre.

Bref, sommes toutes un exercice sans grande difficulté... Si on avait le droit aux string... Parce que la, je n'ai aucune idée de la facon de comparer mon mot avec ma ligne, puis d'arreter la saisie s'il est égal... Quelqu'un aurait-il une idée ???
Merci d'avance, et bonne soirée
Meloo

[:o)] meloo

6 réponses

Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
16
Dans le fichier string.h, il n'y a pas de fonctions sur les strings, mais sur des chaines de caracteres (char *). C'est des fonctions C, qui existait quand la classe string n'existait meme pas.

++
Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
16
Tu peux toujours utilise les char* et les fonctions de string.h
Au pire les fonctions de comparaisons de chaines c'est pas tres compliqué a faire.
++
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
20
char buffer[200]; // rempli de la saisie

if(strstr(buffer, "motAtrouver")) BRAVO_YOUPI;

ciao...
BruNews, MVP VC++
Messages postés
5
Date d'inscription
dimanche 28 mars 2004
Statut
Membre
Dernière intervention
16 janvier 2007

Hm, strstr n'est pas une fonction de la classe string?
[:o)] meloo
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
20
quelle CLASSE ??? ce n'est pas écrit: trucmuche::strstr()
strstr() est une fonction de libc, rien de plus.

ciao...
BruNews, MVP VC++
Messages postés
5
Date d'inscription
dimanche 28 mars 2004
Statut
Membre
Dernière intervention
16 janvier 2007

Pourtant dans le man :
http://man.developpez.com/man3/strstr.3.php
il est écrit ca :
SYNOPSIS

#include <string.h>

char *strstr (const char
*meule_de_foin, const char *aiguille);

Mais d'apres vous iln'est pas faut de l'utiliser ?
Merci de vos reponses
[:o)] meloo