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 glibc detected


Sujet :

C

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2012
    Messages : 11
    Par défaut Problème glibc detected
    Bonjour, mon école m'a donné un projet quadtree (faisant donc intervenir la notion d'arbre) à faire. J'ai donc commencé par la division (découpage d'un carré en 4 carrés égaux. L'école a fourni une bibliothèque graphique permettant entre autre la gestion d'un clic, les formes géométriques,... J'ai donc ceci:

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
     
    #include "graphics.h"
     
    #define L 600
    #define H 600
     
    typedef struct NOEUD* ARBRE;
     
    struct NOEUD
    {
    	COULEUR c;
    	ARBRE f1,f2,f3,f4;
    	POINT P1,P2;
    };
    typedef struct NOEUD NOEUD;
     
    ARBRE init_arbre();
    ARBRE decoupe_arbre(ARBRE A,POINT P_clique);
    ARBRE calcul_coord_fils(ARBRE A);
    int clique_dans(ARBRE A,POINT P_clique);
    void afficher(ARBRE A);
    void liberation(ARBRE A);
     
    int main()
    {
    	ARBRE racine;
    	POINT P_clique,E,F;
    	init_graphics(L,H);
    	racine=init_arbre();
     
    	E.x=0;E.y=0;
    	F.x=L-150;F.y=H-150;
    	racine->P1.x=E.x;racine->P1.y=E.y;
    	racine->P2.x=F.x;racine->P2.y=F.y;
     
    	draw_fill_rectangle(E,F,blanc);
    	P_clique=wait_clic();
    	racine=decoupe_arbre(racine,P_clique);
     
    	afficher(racine);
    	wait_escape();
    	liberation(racine);
     
    	return 0;
    }
     
    ARBRE init_arbre()
    {
    	ARBRE A=(ARBRE)malloc(sizeof(ARBRE));
    	A->f1=NULL;
    	A->f2=NULL;
    	A->f3=NULL;
    	A->f4=NULL;
    	A->c=gris;
     
    	return A;
    }
     
    ARBRE decoupe_arbre(ARBRE A,POINT P_clique)
    {
    	if(A->f1!=NULL)
    	{
    		if(clique_dans(A->f1,P_clique))
    			A->f1=decoupe_arbre(A->f1,P_clique);
    		else if(clique_dans(A->f2,P_clique))
    			A->f2=decoupe_arbre(A->f2,P_clique);
    		else if(clique_dans(A->f3,P_clique))
    			A->f3=decoupe_arbre(A->f3,P_clique);
    		else if(clique_dans(A->f4,P_clique))
    			A->f4=decoupe_arbre(A->f4,P_clique);
    	}
    	else
    		A=calcul_coord_fils(A);
     
    	return A;
    }
     
    ARBRE  calcul_coord_fils(ARBRE A)
    {	
    	A->f1=init_arbre();
    	A->f2=init_arbre();
    	A->f3=init_arbre();
    	A->f4=init_arbre();
     
    	A->f1->P1.x=A->P1.x;A->f1->P1.y=A->P2.y/2;
    	A->f1->P2.x=A->P2.x/2;A->f1->P2.y=A->P2.y;
     
    	A->f2->P1.x=A->P2.x/2;A->f2->P1.y=A->P2.y/2;
    	A->f2->P2.x=A->P2.x;A->f2->P2.y=A->P2.y;
     
    	A->f3->P1.x=A->P1.x;A->f3->P1.y=A->P2.y/2;
    	A->f3->P2.x=A->P2.x/2;A->f3->P2.y=A->P2.y/2;
     
    	A->f4->P1.x=A->P2.x/2;A->f4->P1.y=A->P1.y;
    	A->f4->P2.x=A->P2.x;A->f4->P2.y=A->P2.y/2;
     
    	return A;
    }
     
    int clique_dans(ARBRE A,POINT P_clique)
    {
    	if(P_clique.x>=A->P1.x && P_clique.x<=A->P2.x)
    	{
    		if(P_clique.y>=A->P1.y && P_clique.y<=A->P2.y)
    			return 1;
    		else
    			return 0;
    	}
    	else
    		return 0;
    }
     
    void liberation(ARBRE A)
    {
    	if(A->f1!=NULL)
    	{
    		liberation(A->f1);
    		free(A);
    		liberation(A->f2);
    		free(A);
    		liberation(A->f3);
    		free(A);
    		liberation(A->f4);
    		free(A);
    	}
    }
     
    void afficher(ARBRE A)
    {
    	if(A->racine!=NULL)
    	{
    		afficher(A->f1);
    		draw_rectangle(A->P1,A->P2,A->c);
    		afficher(A->f2);
    		draw_rectangle(A->P1,A->P2,A->c);
    		afficher(A->f3);
    		draw_rectangle(A->P1,A->P2,A->c);
    		afficher(A->f4);
    		draw_rectangle(A->P1,A->P2,A->c);
    	}
    }
    Seulement à l'éxécution, le terminal m'indique l'erreur suivante:

    *** glibc detected *** ./main: malloc(): memory corruption (fast): 0x09616288 ***
    ======= Backtrace: =========
    /lib/i386-linux-gnu/libc.so.6(+0x6ff22)[0x234f22]
    /lib/i386-linux-gnu/libc.so.6(+0x72053)[0x237053]
    /lib/i386-linux-gnu/libc.so.6(__libc_malloc+0x68)[0x2387f8]
    ./main[0x804b5ef]
    ./main[0x804b63c]
    ./main[0x8048d59]
    /lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xf3)[0x1de113]
    ./main[0x8048d9d]
    ======= Memory map: ========
    00110000-00113000 r-xp 00000000 08:01 268859 /usr/lib/i386-linux-gnu/libpulse-simple.so.0.0.3
    00113000-00114000 r--p 00002000 08:01 268859 /usr/lib/i386-linux-gnu/libpulse-simple.so.0.0.3
    00114000-00115000 rw-p 00003000 08:01 268859 /usr/lib/i386-linux-gnu/libpulse-simple.so.0.0.3
    00115000-0012d000 r-xp 00000000 08:01 266565 /usr/lib/libaa.so.1.0.4
    0012d000-0012e000 r--p 00018000 08:01 266565 /usr/lib/libaa.so.1.0.4
    0012e000-0012f000 rw-p 00019000 08:01 266565 /usr/lib/libaa.so.1.0.4
    0012f000-00131000 rw-p 00000000 00:00 0
    00131000-00137000 r-xp 00000000 08:01 269139 /usr/lib/i386-linux-gnu/libjson.so.0.0.1
    00137000-00138000 r--p 00005000 08:01 269139 /usr/lib/i386-linux-gnu/libjson.so.0.0.1
    00138000-00139000 rw-p 00006000 08:01 269139 /usr/lib/i386-linux-gnu/libjson.so.0.0.1
    00139000-0013e000 r-xp 00000000 08:01 269016 /usr/lib/i386-linux-gnu/libasyncns.so.0.3.1
    0013e000-0013f000 r--p 00004000 08:01 269016 /usr/lib/i386-linux-gnu/libasyncns.so.0.3.1
    0013f000-00140000 rw-p 00005000 08:01 269016 /usr/lib/i386-linux-gnu/libasyncns.so.0.3.1
    00140000-00141000 r-xp 00000000 00:00 0 [vdso]
    00141000-0018d000 r-xp 00000000 08:01 268858 /usr/lib/i386-linux-gnu/libpulse.so.0.13.4
    0018d000-0018e000 r--p 0004b000 08:01 268858 /usr/lib/i386-linux-gnu/libpulse.so.0.13.4
    0018e000-0018f000 rw-p 0004c000 08:01 268858 /usr/lib/i386-linux-gnu/libpulse.so.0.13.4
    0018f000-001a2000 r-xp 00000000 08:01 134695 /lib/i386-linux-gnu/libz.so.1.2.3.4
    001a2000-001a3000 r--p 00012000 08:01 134695 /lib/i386-linux-gnu/libz.so.1.2.3.4
    001a3000-001a4000 rw-p 00013000 08:01 134695 /lib/i386-linux-gnu/libz.so.1.2.3.4
    001a4000-001c1000 r-xp 00000000 08:01 269278 /usr/lib/i386-linux-gnu/libxcb.so.1.1.0
    001c1000-001c2000 r--p 0001c000 08:01 269278 /usr/lib/i386-linux-gnu/libxcb.so.1.1.0
    001c2000-001c3000 rw-p 0001d000 08:01 269278 /usr/lib/i386-linux-gnu/libxcb.so.1.1.0
    001c5000-0033d000 r-xp 00000000 08:01 151606 /lib/i386-linux-gnu/libc-2.13.so
    0033d000-0033f000 r--p 00178000 08:01 151606 /lib/i386-linux-gnu/libc-2.13.so
    0033f000-00340000 rw-p 0017a000 08:01 151606 /lib/i386-linux-gnu/libc-2.13.so
    00340000-00343000 rw-p 00000000 00:00 0
    00343000-0034b000 r-xp 00000000 08:01 134693 /lib/i386-linux-gnu/libwrap.so.0.7.6
    0034b000-0034c000 r--p 00007000 08:01 134693 /lib/i386-linux-gnu/libwrap.so.0.7.6
    0034c000-0034d000 rw-p 00008000 08:01 134693 /lib/i386-linux-gnu/libwrap.so.0.7.6
    0034d000-00369000 r-xp 00000000 08:01 169390 /lib/libtinfo.so.5.9
    00369000-0036b000 r--p 0001b000 08:01 169390 /lib/libtinfo.so.5.9
    0036b000-0036c000 rw-p 0001d000 08:01 169390 /lib/libtinfo.so.5.9
    0036c000-0036e000 r-xp 00000000 08:01 268982 /usr/lib/i386-linux-gnu/libXau.so.6.0.0
    0036e000-0036f000 r--p 00001000 08:01 268982 /usr/lib/i386-linux-gnu/libXau.so.6.0.0
    0036f000-00370000 rw-p 00002000 08:01 268982 /usr/lib/i386-linux-gnu/libXau.so.6.0.0
    00370000-00375000 r-xp 00000000 08:01 268990 /usr/lib/i386-linux-gnu/libXdmcp.so.6.0.0
    00375000-00376000 r--p 00004000 08:01 268990 /usr/lib/i386-linux-gnu/libXdmcp.so.6.0.0
    00376000-00377000 rw-p 00005000 08:01 268990 /usr/lib/i386-linux-gnu/libXdmcp.so.6.0.0
    00377000-0037d000 r-xp 00000000 08:01 269182 /usr/lib/i386-linux-gnu/libogg.so.0.7.1
    0037d000-0037e000 r--p 00005000 08:01 269182 /usr/lib/i386-linux-gnu/libogg.so.0.7.1
    0037e000-0037f000 rw-p 00006000 08:01 269182 /usr/lib/i386-linux-gnu/libogg.so.0.7.1
    0037f000-00388000 r-xp 00000000 08:01 268986 /usr/lib/i386-linux-gnu/libXcursor.so.1.0.2
    00388000-00389000 r--p 00008000 08:01 268986 /usr/lib/i386-linux-gnu/libXcursor.so.1.0.2
    00389000-0038a000 rw-p 00009000 08:01 268986 /usr/lib/i386-linux-gnu/libXcursor.so.1.0.2
    0038c000-003aa000 r-xp 00000000 08:01 151603 /lib/i386-linux-gnu/ld-2.13.so
    003aa000-003ab000 r--p 0001d000 08:01 151603 /lib/i386-linux-gnu/ld-2.13.so
    003ab000-003ac000 rw-p 0001e000 08:01 151603 /lib/i386-linux-gnu/ld-2.13.so
    003ac000-0040f000 r-xp 00000000 08:01 268860 /usr/lib/i386-linux-gnu/libpulsecommon-1.0.so
    0040f000-00410000 r--p 00062000 08:01 268860 /usr/lib/i386-linux-gnu/libpulsecommon-1.0.so
    00410000-00411000 rw-p 00063000 08:01 268860 /usr/lib/i386-linux-gnu/libpulsecommon-1.0.so
    00411000-0043a000 r-xp 00000000 08:01 269265 /usr/lib/i386-linux-gnu/libvorbis.so.0.4.5
    0043a000-0043b000 r--p 00028000 08:01 269265 /usr/lib/i386-linux-gnu/libvorbis.so.0.4.5
    0043b000-0043c000 rw-p 00029000 08:01 269265 /usr/lib/i386-linux-gnu/libvorbis.so.0.4.5
    0043c000-00445000 r-xp 00000000 08:01 269004 /usr/lib/i386-linux-gnu/libXrender.so.1.3.0
    00445000-00446000 r--p 00008000 08:01 269004 /usr/lib/i386-linux-gnu/libXrender.so.1.3.0
    00446000-00447000 rw-p 00009000 08:01 269004 /usr/lib/i386-linux-gnu/libXrender.so.1.3.0
    0044a000-0046c000 r-xp 00000000 08:01 266607 /usr/lib/libcaca.so.0.99.17
    0046c000-0046d000 r--p 00022000 08:01 266607 /usr/lib/libcaca.so.0.99.17
    0046d000-00510000 rw-p 00023000 08:01 266607 /usr/lib/libcaca.so.0.99.17
    00510000-00515000 rw-p 00000000 00:00 0
    00515000-00528000 r-xp 00000000 08:01 155540 /lib/i386-linux-gnu/libresolv-2.13.so
    00528000-00529000 r--p 00012000 08:01 155540 /lib/i386-linux-gnu/libresolv-2.13.so
    00529000-0052a000 rw-p 00013000 08:01 155540 /lib/i386-linux-gnu/libresolv-2.13.so
    0052a000-0052c000 rw-p 00000000 00:00 0
    0052d000-00530000 r-xp 00000000 08:01 151609 /lib/i386-linux-gnu/libdl-2.13.so
    00530000-00531000 r--p 00002000 08:01 151609 /lib/i386-linux-gnu/libdl-2.13.so
    00531000-00532000 rw-p 00003000 08:01 151609 /lib/i386-linux-gnu/libdl-2.13.so
    00532000-0059d000 r-xp 00000000 08:01 269234 /usr/lib/i386-linux-gnu/libsndfile.so.1.0.24
    0059d000-0059e000 r--p 0006b000 08:01 269234 /usr/lib/i386-linux-gnu/libsndfile.so.1.0.24
    0059e000-0059f000 rw-p 0006c000 08:01 269234 /usr/lib/i386-linux-gnu/libsndfile.so.1.0.24
    0059f000-005a3000 rw-p 00000000 00:00 0
    005a6000-005b0000 r-xp 00000000 08:01 310145 /usr/lib/libesd.so.0.2.39
    005b0000-005b1000 r--p 00009000 08:01 310145 /usr/lib/libesd.so.0.2.39
    005b1000-005b2000 rw-p 0000a000 08:01 310145 /usr/lib/libesd.so.0.2.39
    005b7000-005d9000 r-xp 00000000 08:01 310015 /usr/lib/libaudiofile.so.0.0.2
    005d9000-005da000 r--p 00021000 08:01 310015 /usr/lib/libaudiofile.so.0.0.2
    005da000-005dc000 rw-p 00022000 08:01 310015 /usr/lib/libaudiofile.so.0.0.2
    005dc000-005ed000 r-xp 00000000 08:01 268992 /usr/lib/i386-linux-gnu/libXext.so.6.4.0
    005ed000-005ee000 r--p 00010000 08:01 268992 /usr/lib/i386-linux-gnu/libXext.so.6.4.0
    005ee000-005ef000 rw-p 00011000 08:01 268992 /usr/lib/i386-linux-gnu/libXext.so.6.4.0
    00601000-00605000 r-xp 00000000 08:01 268994 /usr/lib/i386-linux-gnu/libXfixes.so.3.1.0
    00605000-00606000 r--p 00003000 08:01 268994 /usr/lib/i386-linux-gnu/libXfixes.so.3.1.0
    00606000-00607000 rw-p 00004000 08:01 268994 /usr/lib/i386-linux-gnu/libXfixes.so.3.1.0
    0060a000-0067f000 r-xp 00000000 08:01 266539 /usr/lib/libSDL-1.2.so.0.11.3
    0067f000-00680000 r--p 00075000 08:01 266539 /usr/lib/libSDL-1.2.so.0.11.3
    00680000-00681000 rw-p 00076000 08:01 266539 /usr/lib/libSDL-1.2.so.0.11.3
    00681000-006ad000 rw-p 00000000 00:00 0
    006ad000-006c9000 r-xp 00000000 08:01 134633 /lib/i386-linux-gnu/libgcc_s.so.1
    006c9000-006ca000 r--p 0001b000 08:01 134633 /lib/i386-linux-gnu/libgcc_s.so.1
    006ca000-006cb000 rw-p 0001c000 08:01 134633 /lib/i386-linux-gnu/libgcc_s.so.1
    006f3000-0073a000 r-xp 00000000 08:01 169375 /lib/i386-linux-gnu/libdbus-1.so.3.5.7
    0073a000-0073b000 r--p 00046000 08:01 169375 /lib/i386-linux-gnu/libdbus-1.so.3.5.7
    0073b000-0073c000 rw-p 00047000 08:01 169375 /lib/i386-linux-gnu/libdbus-1.so.3.5.7
    00751000-007e3000 r-xp 00000000 08:01 268854 /usr/lib/i386-linux-gnu/libfreetype.so.6.6.2
    007e3000-007e7000 r--p 00091000 08:01 268854 /usr/lib/i386-linux-gnu/libfreetype.so.6.6.2
    007e7000-007e8000 rw-p 00095000 08:01 268854 /usr/lib/i386-linux-gnu/libfreetype.so.6.6.2
    0081e000-00835000 r-xp 00000000 08:01 155539 /lib/i386-linux-gnu/libpthread-2.13.so
    00835000-00836000 r--p 00016000 08:01 155539 /lib/i386-linux-gnu/libpthread-2.13.so
    00836000-00837000 rw-p 00017000 08:01 155539 /lib/i386-linux-gnu/libpthread-2.13.so
    00837000-00839000 rw-p 00000000 00:00 0
    00839000-00885000 r-xp 00000000 08:01 268933 /usr/lib/i386-linux-gnu/libFLAC.so.8.2.0
    00885000-00886000 r--p 0004b000 08:01 268933 /usr/lib/i386-linux-gnu/libFLAC.so.8.2.0
    00886000-00887000 rw-p 0004c000 08:01 268933 /usr/lib/i386-linux-gnu/libFLAC.so.8.2.0
    008b4000-008bb000 r-xp 00000000 08:01 155541 /lib/i386-linux-gnu/librt-2.13.so
    008bb000-008bc000 r--p 00006000 08:01 155541 /lib/i386-linux-gnu/librt-2.13.so
    008bc000-008bd000 rw-p 00007000 08:01 155541 /lib/i386-linux-gnu/librt-2.13.so
    00909000-00931000 r-xp 00000000 08:01 153964 /lib/i386-linux-gnu/libm-2.13.so
    00931000-00932000 r--p 00028000 08:01 153964 /lib/i386-linux-gnu/libm-2.13.so
    00932000-00933000 rw-p 00029000 08:01 153964 /lib/i386-linux-gnu/libm-2.13.so
    0094f000-00954000 r-xp 00000000 08:01 266816 /usr/lib/libgpm.so.2.0.0
    00954000-00955000 r--p 00004000 08:01 266816 /usr/lib/libgpm.so.2.0.0
    00955000-00956000 rw-p 00005000 08:01 266816 /usr/lib/libgpm.so.2.0.0
    009b2000-009b6000 r-xp 00000000 08:01 310795 /usr/lib/libSDL_ttf-2.0.so.0.6.3
    009b6000-009b7000 r--p 00003000 08:01 310795 /usr/lib/libSDL_ttf-2.0.so.0.6.3
    009b7000-009b8000 rw-p 00004000 08:01 310795 /usr/lib/libSDL_ttf-2.0.so.0.6.3
    009b8000-00a8d000 r-xp 00000000 08:01 133771 /lib/libslang.so.2.2.4
    00a8d000-00a8e000 ---p 000d5000 08:01 133771 /lib/libslang.so.2.2.4
    00a8e000-00a91000 r--p 000d5000 08:01 133771 /lib/libslang.so.2.2.4
    00a91000-00a9f000 rw-p 000d8000 08:01 133771 /lib/libslang.so.2.2.4
    00a9f000-00ad9000 rw-p 00000000 00:00 0
    00b03000-00b18000 r-xp 00000000 08:01 153966 /lib/i386-linux-gnu/libnsl-2.13.so
    00b18000-00b19000 r--p 00015000 08:01 153966 /lib/i386-linux-gnu/libnsl-2.13.so
    00b19000-00b1a000 rw-p 00016000 08:01 153966 /lib/i386-linux-gnu/libnsl-2.13.so
    00b1a000-00b1c000 rw-p 00000000 00:00 0
    00bfe000-00cea000 r-xp 00000000 08:01 269014 /usr/lib/i386-linux-gnu/libasound.so.2.0.0
    00cea000-00cee000 r--p 000eb000 08:01 269014 /usr/lib/i386-linux-gnu/libasound.so.2.0.0
    00cee000-00cef000 rw-p 000ef000 08:01 269014 /usr/lib/i386-linux-gnu/libasound.so.2.0.0
    00cef000-00e20000 r-xp 00000000 08:01 268980 /usr/lib/i386-linux-gnu/libX11.so.6.3.0
    00e20000-00e21000 ---p 00131000 08:01 268980 /usr/lib/i386-linux-gnu/libX11.so.6.3.0
    00e21000-00e22000 r--p 00131000 08:01 268980 /usr/lib/i386-linux-gnu/libX11.so.6.3.0
    00e22000-00e24000 rw-p 00132000 08:01 268980 /usr/lib/i386-linux-gnu/libX11.so.6.3.0
    00e24000-00e25000 rw-p 00000000 00:00 0
    00e8a000-00eaa000 r-xp 00000000 08:01 167276 /lib/libncurses.so.5.9
    00eaa000-00eab000 r--p 0001f000 08:01 167276 /lib/libncurses.so.5.9
    00eab000-00eac000 rw-p 00020000 08:01 167276 /lib/libncurses.so.5.9
    00f67000-00f95000 r-xp 00000000 08:01 169384 /lib/libncursesw.so.5.9
    00f95000-00f96000 r--p 0002d000 08:01 169384 /lib/libncursesw.so.5.9
    00f96000-00f97000 rw-p 0002e000 08:01 169384 /lib/libncursesw.so.5.9
    00f97000-010fd000 r-xp 00000000 08:01 269267 /usr/lib/i386-linux-gnu/libvorbisenc.so.2.0.8
    010fd000-0110e000 r--p 00165000 08:01 269267 /usr/lib/i386-linux-gnu/libvorbisenc.so.2.0.8
    0110e000-0110f000 rw-p 00176000 08:01 269267 /usr/lib/i386-linux-gnu/libvorbisenc.so.2.0.8
    08048000-0804d000 r-xp 00000000 08:01 149921 /home/robin/Bureau/quadtree/main
    0804d000-0804e000 r--p 00004000 08:01 149921 /home/robin/Bureau/quadtree/main
    0804e000-0804f000 rw-p 00005000 08:01 149921 /home/robin/Bureau/quadtree/main
    095c0000-09619000 rw-p 00000000 00:00 0 [heap]
    b7200000-b7221000 rw-p 00000000 00:00 0
    b7221000-b7300000 ---p 00000000 00:00 0
    b7350000-b74b0000 rw-s 00000000 00:04 1048591 /SYSV00000000 (deleted)
    b74b0000-b74ea000 rw-p 00000000 00:00 0
    b7568000-b7569000 r--p 0085c000 08:01 271514 /usr/lib/locale/locale-archive
    b7569000-b75a9000 r--p 002bd000 08:01 271514 /usr/lib/locale/locale-archive
    b75a9000-b77a9000 r--p 00000000 08:01 271514 /usr/lib/locale/locale-archive
    b77a9000-b77b3000 rw-p 00000000 00:00 0
    b77ba000-b77bc000 rw-p 00000000 00:00 0
    b77bc000-b77c3000 r--s 00000000 08:01 278612 /usr/lib/i386-linux-gnu/gconv/gconv-modules.cache
    b77c3000-b77c5000 rw-p 00000000 00:00 0
    bfe27000-bfe48000 rw-p 00000000 00:00 0 [stack]
    Aborted
    Je n'ai pas trouvé de réponse à mon problème en cherchant sur internet, je viens donc chercher un peu d'aide ici. Merci.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Je repère quelques problèmes :
    • Dans init_arbre() :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      ARBRE A=(ARBRE)malloc(sizeof(NOEUD));
      Tu alloues l'espace pour une structure NOEUD et non un pointeur sur NOEUD.
    • Dans liberation() :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      6
      7
      8
      liberation(A->f1);
      free(A);
      liberation(A->f2);
      free(A);
      liberation(A->f3);
      free(A);
      liberation(A->f4);
      free(A);
      Une seule fois ça suffit, et après avoir libéré tous les fi
      Et si A->f1 est NULL tu ne libères pas A ?
    • Dans afficher() :
      Oubli volontaire ou non, mais je ne vois pas de champ racine dans la structure NOEUD.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2012
    Messages : 11
    Par défaut Probleme mémoire résolu
    Le problème a été résolu, merci. L'arbre racine est déclaré dans le main, il faut maintenant pouvoir réitérer la division.

  4. #4
    Membre Expert Avatar de plxpy
    Homme Profil pro
    Ingénieur géographe
    Inscrit en
    Janvier 2009
    Messages
    792
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur géographe
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2009
    Messages : 792
    Par défaut
    Salut

    Citation Envoyé par outlawz94
    Bonjour, mon école m'a donné un projet quadtree (faisant donc intervenir la notion d'arbre) à faire
    Ce serait intéressant de connaître un peu plus le contexte : est-ce une bibliothèque très générale pour gérer des Quadtree ou quelque chose de beaucoup plus limité (éléments = carrés, forcément divisés en 4 parties égales) ?

    Citation Envoyé par outlawz94
    il faut maintenant pouvoir réitérer la division
    Ben oui mais qu'est-ce qui décide de diviser quoi ? Un clic souris ? Un découpage systématique avec une prodondeur d'arbre décidée à l'avance ? Si aucune boucle ou aucun soupçon de récursivité (ou quelque chose s'en approchant) selon la réponse n'apparait dans ton code, il ne se passera rien ...

    réitérer ... itérer ... itération ... boucle

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

Discussions similaires

  1. problème de mémoire : glibc detected
    Par cedrix57 dans le forum Fortran
    Réponses: 1
    Dernier message: 23/05/2010, 11h25
  2. Problème avec Fortran 90 : glibc detected
    Par Invité dans le forum Fortran
    Réponses: 3
    Dernier message: 31/07/2009, 13h39
  3. Problème de detection de clavier et de souris
    Par azd dans le forum Périphériques
    Réponses: 6
    Dernier message: 21/11/2005, 15h33
  4. Réponses: 5
    Dernier message: 04/11/2005, 18h59
  5. problème de detection des CD dans mes lecteurs
    Par zakfa dans le forum Windows XP
    Réponses: 8
    Dernier message: 31/03/2005, 11h07

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