Programmation en c,
Résolu
rilesse
-
rilesse -
rilesse -
A voir également:
- Programmation en c,
- Application de programmation - Guide
- Mettre en veille un programme - Guide
- Programmer en basic sous windows 10 - Télécharger - Édition & Programmation
- Un autre programme est en cours d'installation - Forum Windows 10
- Programmation envoi sms - Guide
3 réponses
oui je sait, mais le rof nous a demander d'ecrire un implémentation de cette fonction.
j'ai essayer de la faire mais mais malheuresemant mon micro c'est plenter et j'ai pas un micro pour le refaire c'est trop tard, SVP aidez moi
j'ai essayer de la faire mais mais malheuresemant mon micro c'est plenter et j'ai pas un micro pour le refaire c'est trop tard, SVP aidez moi
C'est plutôt strstr :
http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/strstr.3.html
Et si elle existe déjà, pourquoi tu veux la recoder ? En plus je crois que c'est une question à laquelle j'ai déjà répondu sur ce forum... Il faut balayer ta chaine en utilisant la fonction strcmp...
Bonne chance
http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/strstr.3.html
Et si elle existe déjà, pourquoi tu veux la recoder ? En plus je crois que c'est une question à laquelle j'ai déjà répondu sur ce forum... Il faut balayer ta chaine en utilisant la fonction strcmp...
Bonne chance
On écrit trivialement le programme suivant ;-)
Merci de ne pas recopier bêtement et de prendre le temps de comprendre... je n'aime pas donner les solutions d'un exercice directement.
Bonne chance
#include <string.h> #include <stdio.h> /** * \brief teste si la deuxieme chaine est le * debut de la seconde * \param sentence la phrase * \param pattern le motif * \return 1 si vrai 0 sinon */ int is_prefix(const char *sentence,const char *pattern){ unsigned int i, len_p=strlen(pattern), len_s=strlen(sentence); for(i=0;i<len_p;++i){ if(i>len_s) return 0; if(sentence[i]!=pattern[i]) return 0; } return 1; } /** * \brief compare deux chaines en retournant * le nombre d'occurence de la 2e dans la 1ere * \param sentence la phrase * \param pattern le motif * \return le nombre d'occurence de str2 dans str1 */ unsigned int my_strstr(const char *sentence,const char *pattern){ unsigned int res=0,i, len_s=strlen(sentence), len_p=strlen(pattern); for(i=0;i<len_s;++i){ if(is_prefix(sentence,pattern)) ++res; ++sentence; } return res; } int main(){ char *str1="plop et plop plopplop"; char *str2="plop"; printf("str1 = [%s]\n",str1); printf("str2 = [%s]\n",str2); printf("my_strstr(\"%s\",\"%s\") = %d\n",str1,str2,my_strstr(str1,str2)); return 0; }
Merci de ne pas recopier bêtement et de prendre le temps de comprendre... je n'aime pas donner les solutions d'un exercice directement.
Bonne chance