Kann einer Mal bitte ;-| mein Programm durchsehen

Gast #250378
Lesenswert?

Ich habe ein Programm geschrieben(erst der Anfang) und das bekomme ich
nicht zum Laufen. Ein paar Fehler sind schon behoben. aber einer
stört:

GCC sagt:
/home/hannibal/tmp/ccaGTB1E.o(.eh_frame+0x11): undefined reference to
`__gxx_personality_v0'
collect2: ld returned 1 exit status

OS:Mandrake Linux 10.1

Kann mir jemand helfen???
Angehängte Dateien:
Gast #250380
Lesenswert?

mmh, mir ist da was anderes aufgefallen:

if(cheat2==true)
{
printf("Debug Modus aktiv\n");
if(cheat1==true)
{
printf("Mehr Hühner Cheat aktiv\n");
}
}

Er wird niemals in die Ausgabe "Mehr Hühner Cheat" reinspringen!!!
Persönliche Seite #250382
Lesenswert?

Die Fehlermeldung ist eine Linkerfehlermeldung und besagt, daß in der
Objektdatei ccaGTB1E.o ein Symbol namens __gxx_personality_v0
referenziert wird, das aber vom Linker nicht aufgelöst werden kann.

Du wirst in Deinem Makefile Deines Projektes irgendeine Library
vergessen haben.

Obendrein solltest Du Dir Deinen "Quelltext" nochmal näher ansehen,
da ist zwar von Hühnern die Rede, aber die Endlosschleife wird dadurch
nicht verlassen ...

Literaturhinweis: Kernighan & Ritchie, Programmieren in C, zweite
Auflage, Hanser Verlag

Ja, ich weiß, daß das ein C-Buch ist.
#250386
Lesenswert?

Hm, ich hab das bool übersehen; das gibts ja in (älterem) C noch gar
nicht. Ich würd dir empfehlen, entweder reinen C-Code zu schreiben (was
du eh schon beinahe machst) oder reinen C++-Code. Aber kein Mischmasch.
Je nachdem für was du dich entscheidest nennst du die Datei main.c bzw.
main.cpp.

Falls du C++ programmieren möchtest, ein paar Kleinigkeiten: <stdio.h>
und <string.h> sind deprecated, sollte man also nicht mehr verwenden.
Stattdessen (wenn man die C-Funktionalität wirklich brauchen sollte)
gibt es <cstdio> bzw. <cstring>. Besser ist es aber, <iostream> und
<string> einzubinden und anstelle printf() std::cout zu verwenden. In
C++ sollte man, bevor man printf aufruft, auch zuerst sync_with_stdio
[1] aufrufen, ansonsten kann printf zu seltsamen Effekten führen.

Nur weniges ist schlimmer als C/C++-Mischmasch (tm).

[1] http://www.cplusplus.com/ref/iostream/ios_base/sync_with_stdio.html

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren