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 :

Problème d'allocation dynamique


Sujet :

C

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 49
    Par défaut Problème d'allocation dynamique
    Bonsoir,

    Je comprends vraiment pas ce qui ne vas pas dans mon code, je pense faire une simple allocation dynamique d'un tableau d'entiers à 2 dimensions et initialiser toutes les valeurs à 0, mais quand je veux l'afficher, ça plante .

    Voilà le code:
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    #include <stdio.h>
    #include <stdlib.h>
     
    int main()
    {
        int **matrice_adj;
        int ordre = 9;
        int i, j;
     
        matrice_adj = (int**)malloc(ordre * sizeof(int*));
     
        for (i = 0; i < ordre; i++)
            matrice_adj[i] = (int*)malloc(ordre * sizeof(int));
     
        for (i = 0; i < ordre; i++)
            for (j = 0; j < ordre; j++)
                matrice_adj[i][j] = 0;
     
        for (i = 0; i < ordre; i++)
            for(j = 0; j < ordre; j++);
                printf("%d ", matrice_adj[i][j]);
     
        for (i = 0; i < ordre; i++)
            free(matrice_adj[i]);
        free(matrice_adj);
     
        return 0;
    }
    Ca doit être une erreur tout bête, mais pas moyen de la trouver.

    Merci d'avance

  2. #2
    Membre expérimenté
    Inscrit en
    Septembre 2006
    Messages
    414
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 414
    Par défaut
    oui tout bête effectivement un ";" après le for (avant le printf):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for (i = 0; i < ordre; i++)
            for(j = 0; j < ordre; j++);
                printf("%d ", matrice_adj[i][j]);

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 49
    Par défaut
    J'en étais sûr

    Le nombre de fois où ça m'est arrivé ce truc...

    Merci beaucoup!

  4. #4
    Membre confirmé Avatar de Gui13
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    157
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2006
    Messages : 157
    Par défaut
    Je trouve qu'avec des accolades ça se voit mieux, pense peut être à en mettre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    for (i = 0; i < ordre; i++)
    {
        for(j = 0; j < ordre; j++);
        {
            printf("%d ", matrice_adj[i][j]);
        }
    }

Discussions similaires

  1. Réponses: 3
    Dernier message: 20/09/2009, 17h40
  2. problème d'allocation dynamique.
    Par watiero dans le forum C++
    Réponses: 15
    Dernier message: 18/02/2008, 18h06
  3. Problème d'allocation dynamique
    Par addsomemusic dans le forum Fortran
    Réponses: 3
    Dernier message: 11/01/2008, 10h45
  4. Problème d'allocation dynamique
    Par Hybrix dans le forum C++
    Réponses: 4
    Dernier message: 09/12/2007, 22h12
  5. Question sur les problèmes d'allocation dynamique
    Par slylafone dans le forum C++
    Réponses: 23
    Dernier message: 25/10/2004, 14h18

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