Nur kurz. Wann ist das erlaubt: for( int i = 0; i<= 12;i++) ???
-
Es gibt Situationen, in denen dieses so nicht erlaubt ist ( Definition inside of bla bla bla )und dann spuckt der Syntaxchecker noch irgendwas mit Code99 aus.
Dann muss man irgendwo vor der for-Schleife diese Zählervariable separat deklarieren und sie in der Klammer nur noch ninitieren , for ( i=0;...;...Andere Situationen erlauben dies aber, und ich habe noch keine Systematik dahinter entdeckt.
.
Liegt es vllt. am Dev-Cpp?
Danke schonmal.
-
ich glaub' seit C99 ist es erlaubt, davor nicht.
mit C99 da kannst du variablen anlegen, (fast) wo du willst...
-
DAs liegt wohl daran, nach welcher Version des ANSI-Standards sich dein Compiler richtet. In C98 müssen Variablendefinitionen am Anfang des Blocks stehen, in dem sie gebraucht werden (und Definitionen im Kopf einer Schleife sind illegal), in C++ (und afaik auch in C99) sind Variablendefinitionen nahezu überall im Code erlaubt.
-
und wie änder ich das in meinem Dev-Cpp?
Geht das überhaupt?
Und vor Allem, was genau ist dafür nun zuständig, also sowohl für die Restriktionen als auch für dieses Code98 oder 99 Ding?
Ist das innerhalb der Compiler options erlaubt, das umzustellen?Ich meine, ich habe in Dev-Cpp n C-Projekt angeklickt, um n tolower test zu machen...den ich nicht in meiner WinApi umgebung machen wollte.....
....schätze also, dass wenn ich den Testcode aus der Konsolenumgebung wieder in die DlgProc des WinApi-Projektes kopiere, es dann möglich ist, innerhalb einer Klammer eine Variable zu deklarieren, right?Danke bisher.
-
me-S-on schrieb:
und wie änder ich das in meinem Dev-Cpp?
Geht das überhaupt?Das mußt du mal in der Compiler-Doku nachschlagen.
Und vor Allem, was genau ist dafür nun zuständig, also sowohl für die Restriktionen als auch für dieses Code98 oder 99 Ding?
Das ANSI-Standardisierungskomitee
Ist das innerhalb der Compiler options erlaubt, das umzustellen?
Was die Compiler machen, ist ihre Angelegenheit.
Btw, ich habe dort oben einen Zahlendreher drin - in C89 ist es nicht erlaubt, in neueren Versionen schon.
-
ich werde einfach mal gucken , was ich so darüber sonst noch finde.
Irgendwie interessiert mich das jetzt.
Ciao!