Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 4 sur 4
  1. #1
    Invité de passage
    Femme Profil pro Marie
    Etudiante
    Inscrit en
    janvier 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Nom : Femme Marie
    Localisation : France

    Informations professionnelles :
    Activité : Etudiante

    Informations forums :
    Inscription : janvier 2013
    Messages : 4
    Points : 1
    Points
    1

    Par défaut Tableau de Structure à 3 Dimensions

    Bonjour,

    Je suis débutante en langage C++, et j'aimerais lire un fichier Texte, puis l'enregistrer, Voilà à quoi il ressemble plutôt :

    1 2 3
    4 5 6

    seulement voilà, je sais que je dois utiliser un Tableau de structure, mais je ne sais pas comment m'y prendre avec plusieurs dimensions.

    Merci de votre Aide.

  2. #2
    Membre émérite
    Inscrit en
    décembre 2008
    Messages
    532
    Détails du profil
    Informations forums :
    Inscription : décembre 2008
    Messages : 532
    Points : 801
    Points
    801

    Par défaut

    Il n'y a pas de solution simple en C++ pour les tableaux à N dimensions.
    A priori le tableau que tu nous fournis en exemple se stocke dans un int tableau[2][3];, mais ce type a l'inconvénient de ne pas être redimensionnable.

  3. #3
    Membre habitué
    Inscrit en
    mars 2010
    Messages
    118
    Détails du profil
    Informations forums :
    Inscription : mars 2010
    Messages : 118
    Points : 119
    Points
    119

    Par défaut

    tu peux utiliser un tableau de structure :
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    #include <vector>
    #include <fstream>
     
    using namespace std;
     
    struct line
    {
    	int c1;
    	int c2;
    	int c3;
    };
     
    int main(int argc, char* argv[])
    {
            fstream file(/* ton fichier */);
    	vector<line> v;
            int c1, c2, c3;
     
    	file >> c1 >> c2 >> c3;
    	v.push_back({c1, c2, c3});
    	cout << v[0].c1 << " " << v[0].c2 << " " << v[0].c3 << endl;
     
    	return 0;
    }
    ou utiliser un tuple :
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    #include <vector>
    #include <tuple>
    #include <fstream>
     
    using namespace std;
     
    int main(int argc, char* argv[])
    {
    	fstream file(/* ton fichier */);
    	vector<tuple<int, int, int>> v;
    	int c1, c2, c3;
     
    	file >> c1 >> c2 >> c3;
    	v.emplace_back(c1, c2, c3);
    	cout << get<0>(v[0]) << " " << get<1>(v[0]) << " " << get<2>(v[0]) << endl;
     
    	return 0;
    }

  4. #4
    Invité de passage
    Femme Profil pro Marie
    Etudiante
    Inscrit en
    janvier 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Nom : Femme Marie
    Localisation : France

    Informations professionnelles :
    Activité : Etudiante

    Informations forums :
    Inscription : janvier 2013
    Messages : 4
    Points : 1
    Points
    1

    Par défaut

    Merci pour votre aide, je vais essayé ça

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •