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 :

passage tableau 2 dimensions à une fonction


Sujet :

C++

  1. #1
    Membre du Club Avatar de zentaf
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    122
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 122
    Points : 65
    Points
    65
    Par défaut passage tableau 2 dimensions à une fonction
    Bonjour,

    Comment passe t-on un tableau de deux dimensions à une fonction?
    Je veux utiliser le passage par pointeur, car les dimensions ne sont pas connues.

    Merci d'avance.
    Les hommes sont des caisses fermées dont la clé est l'épreuve..

  2. #2
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    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
    void fill_t(int * t, size_t dim1, size_t dim2);
     
    int main()
    {
        int t[5][50];
        fill_t((int *)t, 5, 10);
        return 0;
    }
     
    void fill_t(int * t, size_t dim1, size_t dim2)
    {
        for(size_t i = 0; i < dim1; i++)
            for(size_t j = 0;j < dim2; j++)
                // t[i][j] = -1;
                t[i * dim2 + j] = -1;
    }

  3. #3
    Membre du Club Avatar de zentaf
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    122
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 122
    Points : 65
    Points
    65
    Par défaut
    Merci pour la réponse !

    pouvez vous m'expliquez pourquoi on fait le casting (int*)?
    Les hommes sont des caisses fermées dont la clé est l'épreuve..

  4. #4
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    int t[5][10]; aurait également pu s'écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    typedef int T10[10];
    T10 t[5];
    Le cast est requis car un T10 [5] peut être converti sans cast en T10 * et évidemment en void * mais un T10 * ne peut pas être converti sans cast en int *, c'est tout.

  5. #5
    Membre du Club Avatar de zentaf
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    122
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 122
    Points : 65
    Points
    65
    Par défaut
    Merci beaucoup
    Les hommes sont des caisses fermées dont la clé est l'épreuve..

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

Discussions similaires

  1. Passage de tableau de structure à une fonction
    Par Kefass dans le forum Débuter
    Réponses: 2
    Dernier message: 18/08/2009, 19h07
  2. Réponses: 1
    Dernier message: 11/02/2008, 16h45
  3. [JNI] passage d'un tableau à 2 dimensions à une méthod nativ
    Par mmathieu dans le forum Entrée/Sortie
    Réponses: 8
    Dernier message: 09/02/2007, 18h52
  4. Réponses: 1
    Dernier message: 18/11/2005, 11h38
  5. passage de tableau 2D a une fonction
    Par watashinoitadakimasu dans le forum C
    Réponses: 2
    Dernier message: 11/09/2003, 02h33

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