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 :

pointeur et adresse


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 14
    Par défaut pointeur et adresse
    salut a tous,

    estce que quelqu'un pourra me renseigner sur la signification de cette ecriture
    std::complex<float> (*W)[M] = &Z[k][0];

    sachant les declaration suivantes seulement:
    Z[N][P][M];
    et 0 <= k < N
    merci de me repondre

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2007
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Août 2007
    Messages : 190
    Par défaut
    Salut,

    Pour que l'on puisse te répondre il faudrait que tu sois plus précis sur le tableau Z. Quel est le type des objets stockés ?

  3. #3
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 14
    Par défaut
    voici le type mentionné

    std::complex<float> Z[N][P][M];

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2007
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Août 2007
    Messages : 190
    Par défaut
    std::complex<float> (*W)[M]
    Cette syntaxe un peu obscure permet en fait de déclarer un pointeur (ici W) sur un tableau de M objets de type std::complex<float>.

    &Z[k][0]
    Puisque Z est un tableau de tableau de tableau de std::complex<float> alors Z[k][0] est un tableau de M std::complex<float> et &Z[k][0] est l'adresse d'un tableau de M std::complex<float>. Cette adresse peut donc être stockée dans W puisque W est un pointeur sur tableau de M std::complex<float>.

    Mon explication n'est pas d'une grande clarté donc si tu as des questions n'hésite à m'en faire part.

  5. #5
    Membre émérite

    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    717
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 717
    Par défaut
    C'est équivalent à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    typedef std::complex<float> Vecteur[M]; // défini le type Vecteur comme étant un tableau de M nombre complexes.
    Vecteur* W; // déclare W comme étant un pointeur vers un objet de type Vecteur
    W = &Z[k][0]; // fait pointer W vers le vecteur Z[k][0]

Discussions similaires

  1. Pointeur d'adresse mémoire
    Par LokornTiger dans le forum Débuter
    Réponses: 4
    Dernier message: 27/05/2010, 10h51
  2. Imprimer un pointeur (un adresse)
    Par coolas dans le forum Langage
    Réponses: 4
    Dernier message: 29/04/2008, 11h33
  3. Pointeurs et adresses : la question du débutant
    Par zeiht dans le forum C++/CLI
    Réponses: 16
    Dernier message: 26/06/2007, 14h09
  4. Réponses: 6
    Dernier message: 19/09/2005, 19h48
  5. [LG]adresse de pointeur
    Par grand's dans le forum Langage
    Réponses: 7
    Dernier message: 29/05/2004, 10h27

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