Diskussion:Varianten der Programmiersprache C

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

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>[Quelltext bearbeiten]

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

Unterschied zwischen dem C90 und dem C99 Beispielcode?[Quelltext 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[Quelltext 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]


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[Quelltext 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[Quelltext 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[Quelltext 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[Quelltext 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[Quelltext 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]