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 :

probleme de comparaison de chaines


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Inscrit en
    Août 2007
    Messages
    260
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 260
    Par défaut probleme de comparaison de chaines
    salut les amis
    j'ai un problem avec les fichiers
    dans mon fichier ".txt" il y a comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FFFFFFFFFFFFFFFF034533817420070201002623
    et j'ai reussi a aficher le 03 graçe au le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    fseek(fichier,-24, SEEK_END);
    fgets(V,3, fichier);
    jusque là tous est correcte ...mais quand j'ai voulu faire une condition sur V qui peut peut prendre plusieures valeurs
    j'ai pas su le code convenable
    j'ai fais un
    mais ça n'a pas marche
    alors comment faire les amis ???

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 98
    Par défaut
    Je suis pas un pro mais a vue de nez dans ton fichier le 03 est une chaine de caractere et tu tentes de la comparer à un chiffre?
    Si c'est ca cherche la fonction qui converti une chaine en entier.

  3. #3
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par yous18 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    fseek(fichier,-24, SEEK_END);
    fgets(V,3, fichier);
    jusque là tous est correcte ...mais quand j'ai voulu faire une condition sur V qui peut peut prendre plusieures valeurs
    j'ai pas su le code convenable
    j'ai fais un
    mais ça n'a pas marche
    alors comment faire les amis ???
    Tu ne peux pas comparer une chaine de caractères avec une valeur numérique, ça n'a aucun sens. Il faut d'abord convertir la chaine en numérique avec strtol().

  4. #4
    Membre très actif
    Inscrit en
    Août 2007
    Messages
    260
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 260
    Par défaut
    non j'ai compare comme ça
    et quel sont les argumment de cette fonction strtol(). et elle return quoi ?

  5. #5
    Membre éclairé
    Avatar de odsen.s
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 269
    Par défaut
    et quel sont les argumment de cette fonction strtol(). et elle return quoi ?
    Consulte la doc...
    http://man.developpez.com

    Citation Envoyé par yous18 Voir le message
    non j'ai compare comme ça
    On ne peut pas comparer des chaînes de caractères en C.
    (De plus, il faut utiliser des guillemets et non pas des apostrophes).
    Il faut faire appel à la fonction strcmp(). Je te laisse consulter la doc.

  6. #6
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par yous18 Voir le message
    non j'ai compare comme ça
    N'existe pas.
    et quel sont les argumment de cette fonction strtol(). et elle return quoi ?
    RTFM

    http://man.developpez.com

    grillaid...

  7. #7
    Membre très actif
    Inscrit en
    Août 2007
    Messages
    260
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 260
    Par défaut
    mais apres la conversion la chaine V vaut 03 ou c'est la fonction qui choisi la valeur
    car moi je veux faire un switch car V dans mon programme prend les valeurs suivantes "03,10,A,2,8,E,19" vous pouvez remarque qu'il y a aussi des char
    alors cette fonction est elle la solution ?

  8. #8
    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 : 48
    Localisation : Suisse

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    C'est quoi 03 pour toi? La valeur 3 en représentation octale? Dans ce cas, une saisie avec fgets() et conversion en entier à l'aide de strtol(). Ensuite, tu pourras utiliser cette valeur entière dans un switch.

    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++

    +

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. probleme : comparaison de chaine java/caml
    Par folks dans le forum Caml
    Réponses: 10
    Dernier message: 12/12/2008, 11h37
  2. probleme de comparaison de 2 chaines
    Par nh2_93 dans le forum GTK+ avec C & C++
    Réponses: 3
    Dernier message: 08/06/2007, 11h50
  3. comparaison de chaines de caracteres en PLSQL
    Par biozaxx dans le forum PL/SQL
    Réponses: 3
    Dernier message: 19/08/2004, 09h41
  4. Comparaison de chaines
    Par Marc_P dans le forum Linux
    Réponses: 6
    Dernier message: 17/02/2004, 17h04
  5. [LG]comparaison de chaines de caracteres
    Par thesam dans le forum Langage
    Réponses: 6
    Dernier message: 20/05/2003, 22h41

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