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 :

Variable initialisée mais inconnue par le code, solution incompréhensible!


Sujet :

C++

  1. #1
    Membre du Club

    Profil pro
    Professeur des universités
    Inscrit en
    mai 2005
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Professeur des universités

    Informations forums :
    Inscription : mai 2005
    Messages : 10
    Points : 48
    Points
    48
    Par défaut Variable initialisée mais inconnue par le code, solution incompréhensible!
    Bonjour,
    je développe un code de calcul CAA, j'ai un problème qui surgit sous certaines conditions. ci-dessous la partie qui me pose problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
            if(gcell[i].cedge[k].etype=="ref")
            {
                R.V1+=lij*H_ref(gcell[i].U2,&n).V1;
                R.V2+=lij*H_ref(gcell[i].U2,&n).V2;
                R.V3+=lij*H_ref(gcell[i].U2,&n).V3;
                R.V4+=lij*H_ref(gcell[i].U2,&n).V4;
                slij+=lij;
            }
    le code ne reconnais plus "gcell[i].U2" et pourtant elle est bien calculé en amont.
    pour résoudre le problème, j'ai essayé d'afficher le contenu de "gcell[i].U2" et comme par hasard le programme (re)marche juste en utilisant "cout" pour l'impression à l'écran (voir ci-dessous):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
            if(gcell[i].cedge[k].etype=="ref")
            {
                if(gcell[i].cedge[0].etype=="ref")//artifice pour que ça marche
                {
                 cout<<gcell[i].U2.V.V4<<endl;
                }
     
                R.V1+=lij*H_ref(gcell[i].U2,&n).V1;
                R.V2+=lij*H_ref(gcell[i].U2,&n).V2;
                R.V3+=lij*H_ref(gcell[i].U2,&n).V3;
                R.V4+=lij*H_ref(gcell[i].U2,&n).V4;
                slij+=lij;
            }
    avez-vous une idée de quoi il s'agit?

    merci par avance.

  2. #2
    Membre expérimenté
    Avatar de coyotte507
    Profil pro
    Inscrit en
    octobre 2006
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations forums :
    Inscription : octobre 2006
    Messages : 1 327
    Points : 1 452
    Points
    1 452
    Par défaut
    Salut,

    c'est un problème de compilation où d'exécution?

    Si c'est un problème d'exécution, est ce que ta variable gcell[i].cedge[k].etype est de type char *?

    Coyotte507

  3. #3
    Membre du Club

    Profil pro
    Professeur des universités
    Inscrit en
    mai 2005
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Professeur des universités

    Informations forums :
    Inscription : mai 2005
    Messages : 10
    Points : 48
    Points
    48
    Par défaut
    oui c'est un problème d'exécution, et la variable gcell[i].cedge[k].etype est de type char*.

  4. #4
    Membre du Club

    Profil pro
    Professeur des universités
    Inscrit en
    mai 2005
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Professeur des universités

    Informations forums :
    Inscription : mai 2005
    Messages : 10
    Points : 48
    Points
    48
    Par défaut Problème résolu
    Coyotte508, merci d'avoir attiré mon attention sur le type de la variable "etype",
    j'ai remplacé char* par std::string et ça marche
    @+

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

Discussions similaires

  1. [Débutant] c# / Initialisation variable par le code dans ma classe form :)
    Par foxnono06 dans le forum C#
    Réponses: 2
    Dernier message: 18/05/2013, 12h59
  2. Réponses: 2
    Dernier message: 24/09/2010, 20h28
  3. variable initialisée par shell dans un makefile
    Par chambollemusigny dans le forum Systèmes de compilation
    Réponses: 0
    Dernier message: 02/12/2007, 23h36
  4. Ajout de variable (par le code) dans les Paramètres d'application
    Par hellspawn_ludo dans le forum Windows Forms
    Réponses: 13
    Dernier message: 31/07/2007, 16h50
  5. Réponses: 9
    Dernier message: 20/09/2005, 17h18

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