jsowieso
Lt. Junior Grade
- Registriert
- Okt. 2004
- Beiträge
- 272
Hallo,
ich habe ein Programm geschrieben und wollte ein mehrdimensionales Array einfügen. Leider quitierte mir das Programm immer den Dienst mit folgender Fehlermeldung:
Ich haben das Programm auf den käfrigen Code zugeschnitten hier abgebildet. Kompilieren ( g++ array.cpp) lief ohne Probleme, Erst die Ausführung scheiterte.
Kennt jemand dieses Problem, woran könnte dies liegen? Ich habe eine aktuelle glibc und ich denke nicht das der Paketmanager eine fehlerhafte Installation geliefert hat. Den Quellcode habe ich noch einmal in einem Buch überprüft, allerdings keinen Fehler gefunden (ließ sich ja auch kompilieren).
Eindimensionale Arrays: int *p = new int; funktionieren übrigens.
gcc-Version 4.2.2
Es wäre schön wenn jemand von euch eine Idee hätte, ich bin nämlich ziemlich ratlos.
ich habe ein Programm geschrieben und wollte ein mehrdimensionales Array einfügen. Leider quitierte mir das Programm immer den Dienst mit folgender Fehlermeldung:
Code:
*** glibc detected *** ./a.out: free(): invalid pointer: 0x0804a024 ***
======= Backtrace: =========
/lib/libc.so.6[0xb7d7f836]
/lib/libc.so.6(cfree+0x89)[0xb7d814d9]
/usr/lib/libstdc++.so.6(_ZdlPv+0x21)[0xb7f36861]
/usr/lib/libstdc++.so.6(_ZdaPv+0x1d)[0xb7f368bd]
./a.out(__gxx_personality_v0+0xf9)[0x8048505]
/lib/libc.so.6(__libc_start_main+0xe0)[0xb7d2e390]
./a.out(__gxx_personality_v0+0x35)[0x8048441]
Ich haben das Programm auf den käfrigen Code zugeschnitten hier abgebildet. Kompilieren ( g++ array.cpp) lief ohne Probleme, Erst die Ausführung scheiterte.
Code:
int main() {
int (* const Array)[7] = new int [5][7];
for (int zeile = 0; zeile < 5; ++zeile){
delete[] Array[zeile];
}
delete [] Array;
}
Kennt jemand dieses Problem, woran könnte dies liegen? Ich habe eine aktuelle glibc und ich denke nicht das der Paketmanager eine fehlerhafte Installation geliefert hat. Den Quellcode habe ich noch einmal in einem Buch überprüft, allerdings keinen Fehler gefunden (ließ sich ja auch kompilieren).
Eindimensionale Arrays: int *p = new int; funktionieren übrigens.
gcc-Version 4.2.2
Es wäre schön wenn jemand von euch eine Idee hätte, ich bin nämlich ziemlich ratlos.