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 :

tableau initialiser avec string


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2008
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 187
    Par défaut tableau initialiser avec string
    Bonjour tous le monde

    j'ai le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    static const char qt_meta_stringdata_FenGui[] = {
        "FenGui\0\0calcul()\0actionAdditionner()\0"
        "actionSoustraire()\0actionDivier()\0"
        "actionMultiplier()\0actionClear()\0"
        "action0()\0action1()\0action2()\0action3()\0"
        "action4()\0action5()\0action6()\0action7()\0"
        "action8()\0action9()\0"
    };
    je veux savoir es-ce que cette écriture est juste?
    et là j'ai pas compris, es-ce que dans dans cet exemple on a un seul string écrit sur plusieurs ligne (mais on a pas un cordinateur, dans java on ajoute + entre eux),
    ou bien on a plusieurs string, mais dans ce cas aussi normalement on met des virgules entres eux ?

    quelqu'un peut m'aider...

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 294
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 294
    Par défaut
    Salut,

    C'est une seule chaîne.
    En effet :
    Est équivalent à :
    MAT.

  3. #3
    r0d
    r0d est déconnecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 290
    Billets dans le blog
    2
    Par défaut
    Effectivement, c'est une seule chaine de caractère (un tableau de char).
    Cette façon de procéder est un peu moche à mon avis. C'est une façon d'avoir un tableau de chaines, mais sans avoir besoin de faire un char[][].

    Les '\0' permettent d'utiliser des partie de cette chaine dans les fonctions du standard. Par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    std::cout << qt_meta_stringdata_FenGui << std::endl; // affiche "FenGui"
    std::cout << qt_meta_stringdata_FenGui[8] << std:.endl; // affiche "calcul()"
    //etc.
    Personnellement, je préfère un vecteur de string, mais la raison a ses raisons que la raison ignore...

  4. #4
    Membre confirmé
    Inscrit en
    Avril 2008
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 187
    Par défaut
    Merci pour votre aide

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

Discussions similaires

  1. Liste d'initialisation avec tableau
    Par victor_gasgas dans le forum Langage
    Réponses: 0
    Dernier message: 06/10/2010, 17h46
  2. Liste d'initialisation avec tableau
    Par victor_gasgas dans le forum Langage
    Réponses: 8
    Dernier message: 13/06/2010, 19h04
  3. Tableau a initialiser avec des espaces
    Par Skeeter dans le forum Fortran
    Réponses: 3
    Dernier message: 04/12/2008, 19h35
  4. Tableau avec string comme index
    Par Kiboumz dans le forum VB.NET
    Réponses: 3
    Dernier message: 17/03/2007, 00h22
  5. [Struts][logic:iterate] Probleme avec String
    Par julienOriano dans le forum Struts 1
    Réponses: 7
    Dernier message: 15/06/2004, 09h39

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