g++ segmentation fault
Peter Ohlerich
peter.ohlerich at uni-bielefeld.de
Thu Apr 27 08:52:00 CEST 2000
Uwe Schuerkamp wrote:
> ...
> Aus "man gcc":
>
> -fwritable-strings
>
> Store string constants in the writable data
> segment and don't uniquize them. This is for compatibility
> with old programs which assume they can write into
> string constants. -traditional' also has this ef
> fect.
>
> Writing into string constants is a very bad idea; "constants"
> should be constant.
> ...
Hallo Leute!
Auch wenn das jetzt ein wenig altklug klingt, aber es muß einfach
mal raus. Das hier ist ein klassisches Beispiel, wie man mit
kleinen Dingen große Wirkung erzielt. Es ist relativ einfach
zu sagen "ein Compiler-Flag setzen und es geht", aber das löst
im Ernstfall keine Probleme. Es ist besser sauber zu programmieren
und es eben nicht einem Flag zu überlassen. Solche Flags sind
leider ziemlich Compilerabhängig, manchmal sogar
Compiler-Versions-Abhängig und im dümmsten Falle sogar noch
plattform-spezifisch. Ich plage mich oft genug mit solchen Problemen
rum, wo dann halt im Makefile ein
$(CC) -c xyz.c
Richtig nett wird es nämlich wenn man ein Programm auf mehr als einer
Plattform zum Laufen bringen muß. Der gcc ist auf Nicht-Intel-Kisten
oft nicht unbedingt die erste Wahl...
Wo wir gerade dabei sind (C++), einer der klassichen Fehler:
...
a=new char[5];
...
delete a; // FALSCH!!! wird aber meistens nicht angemeckert
// und ist DER Fehler beim produzieren von Speicherlecks
delete a[]; //Richtig
Viel Spaß noch!
Peter.
--
----------------------------------------------------------------------
HRZ d. Universitaet Bielefeld Phone: +49 521 106-4931 Fax: -2969
Dipl.-Inf. Peter Ohlerich Email: peter.ohlerich at uni-bielefeld.de
P.O.Box 100131 WWW: http://www.uni-bielefeld.de/hrz/
D-33501 Bielefeld (Germany)
-
Hinweise zur Benutzung dieser (und anderer Mailing-Listen) bitte beachten:
--> http://lug-owl.de/mailinglist_hints.html <--
More information about the Linux
mailing list