Diskussion:Varianten der Programmiersprache C

Letzter Kommentar: vor 7 Jahren von 84.55.243.164 in Abschnitt __STDC_VERSION__ nicht unbedingt definiert

Frage: ANSI-C oder ANSI C? Im allg. würde ich letzteres vorziehen, da im englischen ohne den Bindestrich gearbeitet wird und es ja mehr oder minder ein Eigenname ist, der einfach zu übernehmen ist, oder?? ThomasSD 21:36, 3. Apr 2004 (CEST)

<source lang=c> Bearbeiten

Das Syntaxhighlighting funktioniert nicht. Aktuelle Schlüsselwörter werden nicht als solche erkannt.

Unterschied zwischen dem C90 und dem C99 Beispielcode? Bearbeiten

Kann mir mal jemand sagen, worin der Unterschied zwischen dem Beispiel des C99 und dem C90 Standard liegen soll? Momentan sehe ich da nur ein fehlendes return bei der C99 Fassung. -- Daniel 3. Jul 2005 15:13 (CEST)

C99 braucht kein return (ähnlich wie bei C++).
Der Parameter sollte in C90 als „const char *const“ und in C99 als „const char *const restrict“ definiert werden

return und exit Bearbeiten

habe die C99version verbessert, da ich mir sicher bin und auch Summit [1]. fuer die anderen versionen erbitte ich hoefflichst eine klaerung.

roman roman.glass@gmx.net

Ich habe das wieder rückgängig gemacht. exit gibt es schon mindestens seit C89 ;-) . Warum sollte man das bei C99 angeben, wo die Versionen verglichen werden? Persönlich würde ich auch bei C99 immer return 0 (oder EXIT_SUCCESS) angeben. Bei C99 gibt es aber kein undefiniertes Verhalten mehr, wenn man das Funktionsende ohne ein return erreicht.--Plaicy 23:38, 5. Nov. 2006 (CET)Beantworten


Einfuehrung Bearbeiten

Wie waer's mit ner kleinen Einfuehrung? (Was ist C?) --84.182.228.50 14:14, 4. Jan. 2007 (CET)Beantworten

Compiler, die den Standard unterstützen Bearbeiten

mich würde noch interessieren, welche der weiter verbreiteten Compiler den jeweiligen Standard unterstützen. --84.61.214.180 15:27, 6. Okt. 2010 (CEST)Beantworten

MMn wäre eine solche Liste hier nicht unbedingt angebracht, u.a. da umständlich zu warten. C89 (C90) wird von allen C-Compilern mindestens unterstützt (sonst sind es keine C-Compiler ;-), zur Konformität mit C99 habe ich mal die entsprechende Seite des comp.lang.c-Wikis verlinkt. --IrrwahnGrausewitz blah 20:17, 7. Okt. 2010 (CEST)Beantworten

C1x: Dynamische Speicherallokation Bearbeiten

Unter "C1X" heißt es:

  • Dynamische Speicherallokation in neuen Bibliotheksfunktionen (z. B. strdup)

Welche (neuen) Bibliotheksfunktionen sollen in C1x Speicher anfordern? Die einzige neue Funktion, die mir aufgefallen ist, ist aligned_alloc; ich glaube allerdings nicht, dass diese Funktion gemeint war. Kann mir jemand die entsprechenden Kapitel / Absätze sagen? Danke :)

strdup ist zwar von einer XSI-Erweiterung von POSIX 2001 zu einem Bestandteil der Basisdefinition von POSIX 2008 befördert worden, im Entwurf von C1x habe ich den Suchbegriff "strdup" aber nicht finden können. Ich werde das Beispiel daher entfernen. —octo 20:03, 30. Okt. 2010 (CEST)Beantworten

Ich habe die Funktionen (inklusive strdup) inzwischen gefunden und entsprechende Quellen hinzugefügt. —octo 01:54, 31. Okt. 2010 (CEST)Beantworten

C99-Beispiel Bearbeiten

Fehlt im C99-Beispiel nicht der Funktionsprototyp von Ausgabe? – Gorlingor (Diskussion) 16:49, 18. Aug. 2011 (CEST)Beantworten

Nö. Die Funktion wird doch korrekt definiert und damit auch deklariert. --RokerHRO 09:53, 19. Aug. 2011 (CEST)Beantworten
stimmt– Gorlingor (Diskussion) 15:22, 19. Aug. 2011 (CEST)Beantworten

C90 Neuerungen Bearbeiten

Habe void/void* hinzugefügt, gehört zweifellos zu den wichtigen Neuerungen. Außerdem wäre hier jeweils 'wichtige Neuerungen' statt 'wichtigste Neuerungen' das bessere und vor allem passendere Deutsch. -- Scotttiger (Diskussion) 22:40, 23. Apr. 2012 (CEST)Beantworten

__STDC_VERSION__ nicht unbedingt definiert Bearbeiten

__STDC_VERSION__ ist erst ab C95 definiert, die Präprozessortests sollten vielleicht erweitert werden und erst prüfen ob __STDC_VERSION__ überhaupt definiert ist: #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L. 84.55.243.164 13:30, 2. Jan. 2017 (CET)Beantworten