Bonjour

J'obtient le message suivant que je n'arrive pas à débugger. L'erreur se produit (d'après mes tests d'affichages dans cette fonction, à la ligne que j'ai indiqué !

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
 
int print_conf ( int step ) {
 
  int   erreur = 0 ;
  int   iat ;
  char  num[LEN], nom[LEN] ;
  FILE  *mdcrd ;
 
  strcpy ( nom, amdcrd ) ;
 
  if ( ncrd > 0 ) {
    strcat( nom , ".xyz" ) ;
    mdcrd = fopen( nom , "w" ) ;  "  <= ICI * * * * * * * * "
  } else if ( ncrd < 0 ) {
    sprintf( num, "_%d.xyz", step ) ;
    strcat( nom, num ) ;
    mdcrd = fopen( nom, "w" ) ;
  } else {
    return erreur ;
  }
 
  // impression de la conf
  fprintf( mdcrd,"%d \n",nat) ;
  fprintf( mdcrd,"coordonnees xyx en angstrom, iteration = %d \n", step ) ;
  for ( iat = 0 ; iat < nat ; iat++ ) {
    fprintf( mdcrd,"%s %8.3f %8.3f %8.3f\n", aname, x[iat]*1e10, y[iat]*1e10, z[iat]*1e10 );
  }
 
  fclose(mdcrd) ;
 
  return erreur ;
}
J'ai du mal à comprendre pourquoi j'ai une telle erreur ici. Surtout que cette erreur se produit au 2eme passage à cet endroit pendant l'exécution du programme.

Merci pour votre aide

Voici le message d'erreur

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
*** glibc detected *** cargol_dev: malloc(): memory corruption: 0x00002addf3d8f010 ***
======= Backtrace: =========
/lib64/libc.so.6[0x34ba0724ac]
/lib64/libc.so.6(__libc_malloc+0x7a)[0x34ba07402a]
/lib64/libc.so.6[0x34ba0616ba]
cargol_dev[0x406ab5]
cargol_dev[0x4016d7]
cargol_dev[0x4042b7]
/lib64/libc.so.6(__libc_start_main+0xf4)[0x34ba01d974]
cargol_dev[0x400dd9]
======= Memory map: ========
00400000-0040b000 r-xp 00000000 00:16 16420150                           /****/cargol/cargol_dev
0060b000-0060c000 rw-p 0000b000 00:16 16420150                           /******/programme/cargol/cargol_dev
1456e000-147c0000 rw-p 1456e000 00:00 0                                  [heap]
34b9a00000-34b9a1c000 r-xp 00000000 08:02 2207999                        /lib64/ld-2.5.so
34b9c1b000-34b9c1c000 r--p 0001b000 08:02 2207999                        /lib64/ld-2.5.so
34b9c1c000-34b9c1d000 rw-p 0001c000 08:02 2207999                        /lib64/ld-2.5.so
34ba000000-34ba14c000 r-xp 00000000 08:02 2208485                        /lib64/libc-2.5.so
34ba14c000-34ba34c000 ---p 0014c000 08:02 2208485                        /lib64/libc-2.5.so
34ba34c000-34ba350000 r--p 0014c000 08:02 2208485                        /lib64/libc-2.5.so
34ba350000-34ba351000 rw-p 00150000 08:02 2208485                        /lib64/libc-2.5.so
34ba351000-34ba356000 rw-p 34ba351000 00:00 0
34ba400000-34ba482000 r-xp 00000000 08:02 2208490                        /lib64/libm-2.5.so
34ba482000-34ba681000 ---p 00082000 08:02 2208490                        /lib64/libm-2.5.so
34ba681000-34ba682000 r--p 00081000 08:02 2208490                        /lib64/libm-2.5.so
34ba682000-34ba683000 rw-p 00082000 08:02 2208490                        /lib64/libm-2.5.so
34c0400000-34c040d000 r-xp 00000000 08:02 2204497                        /lib64/libgcc_s-4.1.2-20080825.so.1
34c040d000-34c060d000 ---p 0000d000 08:02 2204497                        /lib64/libgcc_s-4.1.2-20080825.so.1
34c060d000-34c060e000 rw-p 0000d000 08:02 2204497                        /lib64/libgcc_s-4.1.2-20080825.so.1
2addf3d8b000-2addf3d8c000 rw-p 2addf3d8b000 00:00 0
2addf3d8d000-2addf3d91000 rw-p 2addf3d8d000 00:00 0
2addf3daf000-2addf3db1000 rw-p 2addf3daf000 00:00 0
2addf4000000-2addf4021000 rw-p 2addf4000000 00:00 0
2addf4021000-2addf8000000 ---p 2addf4021000 00:00 0
7fffb6d09000-7fffb6d1e000 rw-p 7ffffffea000 00:00 0                      [stack]
ffffffffff600000-ffffffffffe00000 ---p 00000000 00:00 0                  [vdso]
Aborted