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 codage


Sujet :

C++

  1. #21
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 400
    Par défaut
    Perdu: C'est "==" pour une comparaison.
    "If", c'est pour un test sur le résultat de cette comparaison.
    --> Tu as donc l'explication de la première erreur: Tu as mis == alors qu'il fallait mettre =.

    Ensuite, la deuxième question: Une affectation, ça marche dans quel sens ?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  2. #22
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 254
    Par défaut

    = += -= *= /= &=

    aie v encore me faire taper sur les doigts

  3. #23
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 400
    Par défaut
    Tu n'as pas compris la question, apparemment.
    Si je fais ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    void UneFonction(void) {
    	int a = 42;
    	int b = 38;
     
    	a = b;
     
    	//Ici, que valent a et b ?
    }
    Combien vaudra a à la fin de la fonction ?
    Même question pour b ?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  4. #24
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 254
    Par défaut
    Ben si a=b les 2 ont la même valeur mais je suis incapable de dire combien .
    Je te rappelle que je débute et croix moi c'est pas faute de ne pas faire d'efforts !! a la base je suis mécano !!

  5. #25
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 400
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 400
    Par défaut
    Dans ce cas, relis ton livre de C++ pour savoir quelle valeur auront a et b.
    Tu ne peux décemment programmer sans savoir les bases.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #26
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 254
    Par défaut
    tu as raison , je vais relire en esperant etre d'un meilleur niveau la prochaine fois .
    PS les tutos et autres sur le c++ ne sont pas souvent tres clairs et il faut parfois
    essayer pour comprendre .
    Je te remercie pour ton aide ,
    @+

  7. #27
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 254
    Par défaut
    a=textBox1->Text; //a est égal au texte

    ceci me permet d'assigner text a la valeur 'a' et ça fonctionne .
    mais bon pour la derniere question je cherche et posterai plus tard car là tard pour moi !!
    merci encore pour votre aide !!!

  8. #28
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 254
    Par défaut
    Bonsoir ,
    le nombre de codes étant nombreux, l'utilisation de if et else if arrive saturation me faut donc trouver une autre méthode , le switch peut il être la solution ou faut créer un fichier base ?
    merci d'avance .

  9. #29
    Membre expérimenté
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 267
    Par défaut
    'Alut.

    Le switch ne marche malheureusement que pour des int et pas pour des chaines de caractères.

  10. #30
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 254
    Par défaut
    Bonsoir Albenejean,
    De quelle façon dois je faire ? je dois suite a la saisie d'un code ex: t123 associer sa définition.

  11. #31
    Membre expérimenté
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 267
    Par défaut
    Désolé, je ne comprends pas... Si tu pouvais être plus clair.

    OK, je viens de comprendre!!! Avant tout, je te conseille de relire tes messages, car ce n'est pas facile pour ceux qui ne connaissent rien à ton problème d'imaginer où tu bloques (le bouton "prévisualisation du message" est très pratique!).

    Bref, revenons à nos moutons...

    La méthode que tu utilisais au début est la bonne.

    Au vu de ton niveau, c'est normal que le code te semble (à juste tire) lourd. Mais ne t'inquiètes pas, plus tu programmeras, plus celà te semblera clair.

  12. #32
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 254
    Par défaut
    d accord je vais essayer d'être plus clair ,
    J'ai codé comme si dessous , au début (20 codes tout va bien mais des que j'arrive a 60 codes là il y a saturation avec message :Error 1 fatal error C1061: limite du compilateur : blocs imbriqués trop profondément.
    Voila mon probleme .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    if(a == L"i456") // si a est egal a i456
    			textBox1->Text = L"contrôler le serrage de l'ampoule"; 
    else if (a == "i457") 
    			textBox1->Text = L"contrôler l'alimentation de l'ampoule"; 
    else if (a == "i458") 
    			textBox1->Text = L"contrôler le bouton";
    //etc... pendant environ 250 fois !! 
     
    puis a la fin else 
    textBox1->Text = L"erreur code";
    	}

  13. #33
    Membre éprouvé
    Avatar de NiamorH
    Inscrit en
    Juin 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 1 309
    Par défaut
    Tu devrais utiliser une std::map. Je pense que tu trouveras le fonctionnement dans la faq c++ du site.

    Le principe d'une map est d'associer un élément avec une clef.

    Dans ton cas, à une chaine qui ferra office de clef tu associeras une autre chaine.

    Si la clefs est mauvaise, tu pourras le détecter et renvoyer une chaine par defaut.

  14. #34
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 254
    Par défaut
    Je n'ai rien trouvé dans la FAC c++ ou j'ai pas su !? j'ai utiliser la recherche et là non plus pas de std::map.
    Merci quand même.

  15. #35
    Membre éprouvé
    Avatar de NiamorH
    Inscrit en
    Juin 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 1 309
    Par défaut
    l'utilisation de la map est ici :
    http://cpp.developpez.com/faq/cpp/?p...GS_switch_case

    section "Comment tester des chaînes de caractères dans un bloc switch ?"

    Mais l'exemple est avec une clef string (ok, comme toi) à laquelle on associe un pointeur de fonction (toi ce sera une autre string).

    Au passage, dès que tu as un peu de temps, je te conseille de lire la faqC++ en commençant par le début jusqu'à la fin. Il n'y a que de bons conseils à prendre si tu veux progresser en C++, même si tu ne comprends pas tout, tu seras conscient de l'existence de certaines techniques et tu pourras t'y référer lorsque tu en sentiras le besoin. C'est une véritable bible.

  16. #36
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 254
    Par défaut
    Donc comme ci-dessous si j'ai bien compris.(merci pour le lien)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    switch(code)
    {
     
          case CODE_i456:
     
                textBox1->Text = L"contrôler le serrage de l'ampoule"; 
                break;
     
          case CODE_i457:
     
                textBox1->Text = L"contrôler l'alimentation de l'ampoule";
                break;
     
          case CODE_i458:
     
                textBox1->Text = L"contrôler le bouton";
     
          case CODE_END_PROCESS:
     
                cout << "Fin du processus!\n";
                break;
     
          default:
     
                cout << "Code inconnu!!!\n";
                break;

  17. #37
    Membre expérimenté
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 267
    Par défaut
    Personnellement, je ferais (même si j'évite générallement les map de string...) ça: (attention, il te manque pas mal de notions à mon avis mais ce n'est pas si compliqué que ça)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    #include <iostream>
    #include <map>
     
    using namespace std;
     
    int main()
    {
        typedef map<string, string> TAction;
        TAction mapAction;
     
        //Création de la map
        mapAction.insert(TAction::value_type("i456", "contrôler le serrage de l'ampoule"));
        mapAction.insert(TAction::value_type("i457", "contrôler l'alimentation de l'ampoule"));
        mapAction.insert(TAction::value_type("i458", "contrôler le bouton"));
     
        //Exemple de recherche
        std::string a = "i456";
     
        if( mapAction.find(a) != mapAction.end() )
        {
            cout<<mapAction[a]<<std::endl;
        }
        else
        {
            cout<<"Cette action n'est pas reconnue\n";
        }
     
     
        return 0;
    }
    [PS] : si quelqu'un pouvais me dire pourquoi VC++ 2005 refuse de compiler ce programme je suis preneur.
    L'erreur est
    error C2679: binary '<<' : no operator found which takes a right-hand operand of type 'std::basic_string<_Elem,_Traits,_Ax>' (or there is no acceptable conversion)
    sur le cout<<mapAction[a].
    Si je remplace par cout<<mapAction[a].c_str(), j'ai d'autres erreurs.

    D'ailleurs VC++ 2005 refuse un cout sur une string. Bizarre...

  18. #38
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    254
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 254
    Par défaut
    Pour ce qui est des notions je ne te le fais pas dire !! je me suis mis a essayer de coder une petite application qui devra m'aider tous les jours dans mon métier qui est l'automobile et ce depuis quelques mois et j'avoue c pas simple !!
    en tous cas merci pour ton aide je vais méditer sur ta solution et l'incorporer avec mes 2 textbox.
    Merci.

  19. #39
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Par défaut
    Citation Envoyé par Albenejean Voir le message
    [PS] : si quelqu'un pouvais me dire pourquoi VC++ 2005 refuse de compiler ce programme je suis preneur.
    L'erreur est sur le cout<<mapAction[a].
    Si tu ajoutes le
    #include <string>
    manquant ?
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

  20. #40
    Membre expérimenté
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 267
    Par défaut
    Si tu ajoutes le #include <string>manquant ?
    Je vuens de revisser ma tête sur mes épaules, j'ai ajouté l'include et tout marche...

Discussions similaires

  1. Probleme de codage dans eclipse (controle lecteur cd)
    Par argon dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 22/07/2007, 11h38
  2. probleme de codage
    Par Hamdi_Maazoul dans le forum XML/XSL et SOAP
    Réponses: 10
    Dernier message: 07/06/2007, 13h02
  3. [WD10] Quelques problemes de codage
    Par orditosh dans le forum WinDev
    Réponses: 3
    Dernier message: 09/05/2007, 20h21
  4. [MySQL] Probleme de codage mysql
    Par toddy_101 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 26/04/2007, 18h51
  5. [MySQL] probleme de codage langue arabe
    Par nourdev dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 11/10/2006, 12h37

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