g++ Ärger
Jan 'Red Bully' Seiffert
redbully at cc.fh-luh.de
Mon Apr 18 15:10:05 CEST 2005
Jan-Benedict Glaw schrieb:
> On Mon, 2005-04-18 13:41:40 +0200, Jan 'Red Bully' Seiffert <redbully at cc.fh-luh.de>
> wrote in message <42639CF4.20609 at cc.fh-luh.de>:
>
>>Jan-Benedict Glaw schrieb:
>>
>>>On Sun, 2005-04-17 12:51:28 +0200, Klaus Reinke <zuffmick at t-online.de>
>>>wrote in message <200504171251.28797.zuffmick at t-online.de>:
>>>...und hier fehlt noch ein
>>>
>>> return 0;
>>>
>>
>>Ich empfehle ein "EXIT_SUCCESS" (aus stdlib.h, wo das wieder die C++ser
>>wieder verstecken...), und das dazugehoerige EXIT_FAILURE ;)
>
>
> return vs. exit(). EXIT_SUCCESS und EXIT_FAILURE sind ja mal auf die
> Bühne gezaubert worden, um sinnvolle Werte auch auf VMS zurückgeben zu
> können (da sieht das nämlich anders aus, als bei allen anderen
> Betriebssystemen...). '0' benutze ich bei returns, EXIT_SUCCESS bei
> exit() und _exit(). IIRC setzen die portierten libcs einen return-Wert
> von 0 ebensogut um wie einen _exit()-Wert von EXIT_SUCCESS.
>
Naja, ich bevorzuge immer EXIT_{SUCCESS|FAILURE}, da sie zum C-Std.
gehoeren (also wirklich in ihrer Bedeutung festgegossen sind), und dabei
ausnamsweise auch sehr plastisch/lesbar. Man sieht halt sofort, was da
zurueckgegeben wird, ob mit exit() oder return.
Dass das wegen der verdrehten Logig von VMS eingefuehrt wurde, nagut,
schraenkt es einen sogar ein, weil man nur ja oder nein Uebergeben kann
(der Standart garantiert einem keinen weiteren Gueltigen
EXIT_FAILURE-Wert), also keine Spielchen mit Rueckgabewert spiegelt
Fehler wieder, vielleicht.
Aber es kostet nichts und das als Portabilitaets-Plus abseits von POSIX
kann man sich goennen, IMHO.
> Vielleicht sollte ich mal VMS auf meinen VAXen installieren?
>
Musst du wissen, ist deine VAX :]
Nur, was willst du damit?
> MfG, JBG
>
>
Gruss
Jan
--
"Don't open the gates. Who the hell needs a wooden horse THAT size ?"
(unknown inhabitant of Troja)
More information about the Linux
mailing list