2013-06-04 7 views
5

Ich habe einige der Best Practices für das GNOME-Projekt gelesen und eine Sache, die sie immer wieder betont haben, war die Vermeidung von C99-Funktionen, da die Unterstützung immer noch nicht weit verbreitet war. Einige der Dinge, die sie erwähnten, waren Features wie einzeilige Kommentare und das Deklarieren von Variablen in der Mitte eines Blocks. Es hat mich wundern, ist C99 Unterstützung, auch für grundlegende Funktionen wie // Kommentare, wirklich noch nicht weit verbreitet? Es ist fast 15 Jahre her, seit der Standard angenommen wurde, und wir haben sogar einen neuen Standard in dieser Zeit herauskommen lassen. Ist das wirklich noch ein Problem?Ist die C99-Unterstützung wirklich noch nicht weit verbreitet?

Antwort

6

http://en.wikipedia.org/wiki/C99#Implementations

Scheint, wie es immer noch ein bisschen ein Problem, auch in GCC, obwohl es sieht aus wie einige kommerziellen Compiler den gesamten Standard implementiert haben.

Microsoft hat wiederholt gesagt, dass es keine Pläne gibt, den C99-Standard zu irgendeinem Zeitpunkt in der Zukunft zu implementieren, was eine Schande für C-Programmierung unter Windows ist.

+1

Huh. Weißt du, warum MS C99 nicht implementieren wird? –

+2

http://herbsutter.com/2012/05/03/reader-qa-what-about-vc-and-c99/ Wie ich es verstehe, werden sie nur Funktionen implementieren, die Teilmenge der C++ - Standards sind. – Nobilis

+2

@kunkelwe: Weil Microsoft nur am C-Standard-Prozess beteiligt ist, sabotiert es es. –

6

Der einzige remote-relevante "C-Compiler", der für die Verwendung in Desktop-Anwendungen oder mobilen Anwendungen verwendet werden kann, aber C99 nicht unterstützt, ist MSVC. Wenn Sie Embedded-Software für obskure Systeme mit ihren eigenen proprietären Compilern schreiben, könnte die Vermeidung von C99-Funktionen sinnvoll sein, aber die Wahl in Gnome macht überhaupt keinen Sinn.

Verwandte Themen