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 :

initialisation tableaux 2D


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Inscrit en
    Novembre 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 2
    Par défaut initialisation tableaux 2D
    Bonjour,
    j'ai hérité d'un programme avec beaucoup d'initialisation de tableau de la forme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    int bidon[5] = {   1 ,   1 ,  1  ,  1  ,  1 } ;
    int bidon1[3][5] = { {   1 ,   1 ,  1  ,  1  ,  1 } , {   1 ,   1 ,  1  ,  1  ,  1 } ,
                                 {   1 ,   1 ,  1  ,  1  ,  1 } } ;
    problème, lorque la taille des tableaux est plus grande ( int bidon[5] ou int bidon1[3][5]) ça provoque une erreur de segmentation.
    Quelqu'un aurait il une idée?
    Merci

    Compilateur Intel : .../libifcore.a -L.../mkl -I.../mkl/include -lmkl_lapack95 -lmkl_intel -lmkl_sequential -lmkl_core -liomp5 .../libimf.a .../libirc.a -lpthread

  2. #2
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Par défaut
    Bonsoir et bienvenue sur le forum

    Un tableau de taille 35, c'est pas gros. Donc a priori le problème ne vient pas de là.

    Probablement une erreur dans le code, qui tente d'accéder à une position non valide des tableaux. Il faut vérifier tout le code et les indices passés au tableaux.

    Un bonne pratique à faire systématiquement : utiliser des std::assert(index < v.size()) systématiquement

  3. #3
    Membre émérite
    Avatar de Ekleog
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 448
    Par défaut
    De mémoire, assert est une macro, non ?

    Et, au passage, v.size() sur un tableau statique ...

    Donc, en corrigeant : assert(index < N); où N est la dimension du tableau.

  4. #4
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Par défaut
    oups
    En effet, c'est assert de <cassert.h>, c'est pas dans std.
    Et mauvais (ou bonne ?) habitude des vector

  5. #5
    Nouveau candidat au Club
    Inscrit en
    Novembre 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 2
    Par défaut
    Merci,
    Mais le problème se passe sur l'instruction de déclaration et d'Initialisation du tableau

  6. #6
    Membre émérite
    Avatar de Ekleog
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 448
    Par défaut
    Tu ne te serais pas trompé en comptant le nombre d'éléments ?

Discussions similaires

  1. Initialiser tableaux VB6
    Par Clo72 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 14/02/2011, 18h48
  2. [Tableaux] Problème d'initialisation de tableau ?
    Par Jiraiya42 dans le forum Langage
    Réponses: 7
    Dernier message: 01/07/2007, 11h26
  3. Réponses: 7
    Dernier message: 30/01/2007, 09h48
  4. [debutant] declaration et initialisation de tableaux
    Par harsh dans le forum Débuter
    Réponses: 12
    Dernier message: 18/03/2005, 23h39
  5. Initialisation de tableaux
    Par bradley vier dans le forum C++
    Réponses: 11
    Dernier message: 02/03/2005, 13h53

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