Wer stimmt mir zu, daß dies korrekter ANSI C Code ist
-
#include <stdio.h> // Fahrenheit-Celsius table int main() { int fahr; for (fahr = 300; fahr > 0; fahr = fahr - 20) { printf("%3d %6.1f\n", fahr, (5.0/9.0)*(fahr-32)); } // Ausgabetest int ergebnis = 0; printf("Ergebnis = %3d\n", ergebnis = 42); // Programmende return 0; }
Ein Freund behauptet, daß das kein ANSI C sei.
-
bezogen auf welchem c-standard?
-
sothis_ schrieb:
bezogen auf welchem c-standard?
Mist, jetzt hat's einer gemerkt.
Aber C90 soll wegen C99 ja automatisch vom ANSI Komitee für ungültig erklärt worden sein.
Somit gibt es eigentlich nur einen ANSI C Standard und das ist C99.
-
Muß ich in der main Klammer bei C99 eigentlich zwingend ein void reinschreiben wenn ich keine parameter übergebe, oder ist das freiwillig?
-
Hier ein Link:
http://de.wikipedia.org/wiki/ISO-CWenn die letzte ( ? ) Korrektur erst 2007 veröffentlicht wurde, wird es in
den meisten Compilern eh noch nicht umgesetzt sein. Vor allem, wenn die
Compilerhersteller sich teilweise noch mit der Urversion von C99 schwertun.Also eher eine akademische Frage.
Wer älteren Code warten muss, sollte wissen dass es verschiedene C-Versionen
gibt, und im Zweifel das Compilat ausgiebig Testen.MfG
-
[quote="Roland_2"]
// Ausgabetest int ergebnis = 0;
Geht das so in C? Eine Variable mitten im Code deklarieren?
-
@AND | OR
Seit C99 geht das.@f.-th.
2007 wurde nur ein TC veröffentlicht. Also nur Fehlerkorrekturen und keine neuen Features.
-
Roland_2 schrieb:
Aber C90 soll wegen C99 ja automatisch vom ANSI Komitee für ungültig erklärt worden sein.
Somit gibt es eigentlich nur einen ANSI C Standard und das ist C99.
-
Tim schrieb:
Roland_2 schrieb:
Aber C90 soll wegen C99 ja automatisch vom ANSI Komitee für ungültig erklärt worden sein.
Somit gibt es eigentlich nur einen ANSI C Standard und das ist C99.Vorwort, Absatz 5. Alles andere waere auch sinnfrei.