Bonjour à tous,

J'obtiens une erreur (que je n'avais jamais vue) lorsque je fais appel à une fonction d'affichage. Cette erreur a lieu lors de l'exécution, pas lors de la compilation.
Voici une partie de l'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
 
*** glibc detected *** ./projet: free(): invalid pointer: 0x0804e9ac ***
======= Backtrace: =========
/lib/libc.so.6[0x2147e4]
/lib/libc.so.6(cfree+0x96)[0x216846]
/usr/lib/libstdc++.so.6(_ZdlPv+0x21)[0x340a461]
/usr/lib/libstdc++.so.6(_ZNSs4_Rep10_M_destroyERKSaIcE+0x1d)[0x33e62cd]
/usr/lib/libstdc++.so.6(_ZNSsD1Ev+0x63)[0x33e7b33]
./projet[0x8049d0a]
./projet[0x8049d9f]
./projet[0x8049ecd]
./projet[0x8049f41]
./projet[0x8049371]
./projet[0x804be68]
/lib/libc.so.6(__libc_start_main+0xe6)[0x1bd5d6]
./projet(__gxx_personality_v0+0x5d)[0x8048e31]
======= Memory map: ========
00110000-00111000 r-xp 00110000 00:00 0          [vdso]
00187000-001a3000 r-xp 00000000 08:03 22532      /lib/ld-2.8.so
001a3000-001a4000 r--p 0001c000 08:03 22532      /lib/ld-2.8.so
001a4000-001a5000 rw-p 0001d000 08:03 22532      /lib/ld-2.8.so
001a7000-0030a000 r-xp 00000000 08:03 22538      /lib/libc-2.8.so
0030a000-0030c000 r--p 00163000 08:03 22538      /lib/libc-2.8.so
0030c000-0030d000 rw-p 00165000 08:03 22538      /lib/libc-2.8.so
0030d000-00310000 rw-p 0030d000 00:00 0
Et voici la fonction en question :

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
 
void stafflist::PrintStaffList(){ //lecture de 4 mots dans un fichier
 
ifstream fichier( "staff.txt" );
 
    if ( fichier ) // ce test échoue si le fichier n'est pas ouvert
    {
	int var1; 
	string var2;
	string var3;
	string var4;
	fichier >> var1 >> var2 >> var3 >> var4; 
	fichier.close();  
    }
    else  
	cout << "Impossible d'ouvrir le fichier !" << endl;
 
    }
Pouvez-vous me dire ce que signifie cette erreur? Il est question de pointeur, mais je n'en utilise pas ...