void in C?
Qualle 30.07.2007 - 14:08 2958 35
gue
Addicted
|
kein schwein verwendet c99.... und das ist sehr gut so. WTF? [ citation needed]
|
semteX
begehrt die rostschaufel
|
naja, mangelhafte / unvollständige compiler implementierungen und "änderungen" die eigentlich eh aus c++ kommen.. wieso also ned gleich c++
|
gue
Addicted
|
Für gewisse Bereiche muss man einfach C verwenden (z.B. wenn man eine Bibliothek schreibt, die auch von C Programmen verwendet werden soll; der Linux Kernel ist auch in C geschrieben). So unvollständig ist die Implementierung übrigens auch nicht: http://gcc.gnu.org/c99status.htmlUnd die meisten Features daraus werden wohl auch schon verwendet (z.B. // als Kommentare), "Kein Schwein verwendet C99" stimmt also sicher nicht ![;)](/images/smilies/wink.gif) "und das ist auch gut so" verstehe ich einfach nicht - wieso soll Innovation schlecht sein? Die Variable Length Arrays wären auch noch ganz praktisch, sind aber wohl schwierig portabel zu implementieren.
|
HaBa
VereinsmitgliedDr. Funkenstein
|
Afaik gibt es keine (vollstaendige) Implementation von C99; die GCC implementiert aber immerhin C89 ![;)](/images/smilies/wink.gif) Worin sich die Standards im Detail unterscheiden, weisz ich perseonlich nicht - die Annotationen, die ANSI ggueber K&R-C macht, fand ich aber durchaus sehr sinnvoll.
Wenn das ein Compiler tut, ist es ein gutes Kriterium, ihn zu meiden. Wenn Software so geschrieben wird, ist es ein gutes Kriterium, sie zu meiden.
![:p](/images/smilies/tongue.gif) Borland C hat void main (void); gepackt, und ich sehe keinen direkten Zusammenhang zwischen "SW die keine Fehlermeldungen ausspuckt" und "schlechter Software". Bei SW die irgendwo installiert wird: ja, Fehlerausgabe etc. ist unbedingt notwendig. Aber ob die Spezialsoftware im Kernkraftwerk irgendwas auswirft?
|
gue
Addicted
|
GCC schluckt void main(void) für C Dateien auch (gibt ein Warning aus), für C++ Dateien kommt die von Qualle genannte Fehlermeldung. Wenn das ein Compiler tut, ist es ein gutes Kriterium, ihn zu meiden.
|
Marcellus
OC Addicted
|
Omfg es gibt int main aus dem grund, dass ein Programm einen returncode hat, ist er 0 ist das Programm normal beendet worden, wenn nicht dann nicht. Das ist auch nur die unix/gnu implementierung, das kann woanders auch anders sein. Generell gibts dafür aus der stdlib.h EXIT_SUCCESS und EXIT_FAILURE immer recht sinnvoll für zb ein shell script (|| & && ![;)](/images/smilies/wink.gif) und ich halts durchaus für Sinnvoll das vorzuschreiben. Wegen Buchempfehlung würd ich mal http://www.pronix.de/pronix-4.html vorschlagen, das c von a bis z kann schon was. Das c++ von a bis z kann ich vorerst nicht wirklich weiterempfehlen. Aber die linux-unix programmierung scheint auch ganz ok zu sein.
|