IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Recherche d'une fonction en C


Sujet :

C

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 8
    Points : 5
    Points
    5
    Par défaut Recherche d'une fonction en C
    Bonjour, je recherche comment traduire en langage C :

    la condition suivante : si .cr est contenu dans la variable host { jexecute } par exemple

    Exemple en langage mIRC : if (.cr isin $variable) { jexecute }
    Merci d'avance pour votre aide

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    Bonsoir,

    strstr devrait convenir
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  3. #3
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 145
    Points
    23 145
    Par défaut
    Même si tu ne connais pas une fonction pour faire cela, rien ne t'empêche de la recréer toi-même.

    Tu parcours ta chaîne de caractère et tu t'arrête soit au '\0' soit dès que tu as trouvé le premier caractère de le sous-chaîne recherchée.

    Tu regarde le caractère suivant s'il
    - correspond, tu continus en parcourant la sous-chaîne cherchée
    - si en plus il est égal au premier caractère de la sous-chaîne cherchée et que tu n'as pas encore noté de rang, tu note son rang.
    - Si il ne correspond pas :
    -> Si un rang est noté, tu reprend à partir de ce rang
    -> Si aucun rang n'est noté, tu reprends à partir de ta position.

    Faut savoir s'amuser un peu

  4. #4
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Ou on gagne du temps et de la sécurité et on trouve (ou demande ) la fonction standard qui le fait

  5. #5
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 145
    Points
    23 145
    Par défaut
    Quand on utilise des fonctions simples comme celles-ci, il est toujours très utile de savoir comment elle fonctionne (de connaitre l'algorithme) afin de prévoir et de comprendre certains problèmes.

    Ex : char test[3] = {'a', 'r', 't'}; zut le strcmp ne marche pas.

    Cela peut être aussi utile pour réécrire certaines fonctions qui ne correspondent pas tout à fait à nos besoins.

    Bon, quand il s'agit de fonctions standards... on a pas trop intérêt de la réécrire, je plaisantait un peu^^

    Mais ça peut toujours être assez amusant de réécrire ces fonctions

  6. #6
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Points : 5 360
    Points
    5 360
    Par défaut
    Citation Envoyé par Neckara Voir le message
    Ex : char test[3] = {'a', 'r', 't'}; zut le strcmp ne marche pas.
    Evidemment, il ne s'agit pas d'une chaîne de caractères valide, mais d'un simple tableau contenant des entiers de caractères de type char.

    strcmp(), comme son nom l'indique, est conçue pour travailler sur des chaînes de caractères. Pas besoin de remplanter toutes les fonctions déclarées dans string.h pour anticiper ce problème. Une simple lecture de la documentation suffit.

    Que ce soit bien clair, réimplanter les fonctions de gestion de chaînes de caractères de la bibliothèque standard est un excellent exercice pédagogique. Toutefois, lorsque le problème qu'on essaie de résoudre n'est pas à priori centré sur l'étude de la gestion des chaînes, comme activité pédagogique, il est préférable d'orienter le PO vers la fonction de la bibliothèque standard qui convient (si elle existe, naturellement).

    Avec mes meilleures salutations

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  7. #7
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    D'ailleurs, puisque ta "chaîne" est de 3, on pourra utiliser à ce moment-là strncmp(char*, char*, int len)
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

Discussions similaires

  1. A la recherche d'une fonction du genre time_sub
    Par fayred dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 24/08/2007, 12h10
  2. Recherche d'une fonction
    Par Dub's dans le forum C
    Réponses: 12
    Dernier message: 08/03/2007, 09h05
  3. Recherche d'une fonction guillemets
    Par too_Slow_ dans le forum Flash
    Réponses: 3
    Dernier message: 02/03/2007, 11h30
  4. [C] recherche d'une fonction
    Par Alice9 dans le forum MFC
    Réponses: 4
    Dernier message: 06/04/2006, 09h19
  5. Réponses: 17
    Dernier message: 14/02/2006, 00h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo