Hallo, was stört den Codevision-Compiler an folgender Zeile: const uint32_t test[] = {1,8,32,64,128,256,1024}; bzw. wie kann ich diese richtigerweise abändern?
Normalerweise artikulieren sich C-Compiler dadurch, dass sie nicht einfach nur Möööp machen, sondern eine Fehlermeldung ausgeben, die meistens sogar ziemlich zutreffend auf das Problem hinweist.
ich tippe mal darauf, dass du das Header File nicht inkludiert hast, in dem die Defintionen für uint32_t enthalten ist. #include <inttypes.h>
So kommt die Fehlermeldung nicht mehr: const unsigned long test[] = {1,8,32,64,128,256,1024}; Ist das dann richtig?
Die Zeile scheint auf dem ersten Blick O.K. zu sein ! Oft liegt der Fehler auch in Zeilen davor, nur diese werden vom Compiler nicht genannt. Daher auch mal das was über dieser Zeile steht posten !!!
> #include <inttypes.h> Kennt Codevision nicht, mit #include <stdint.h> sollte es klappen. Das wäre dann auch C99 konform. > const unsigned long test[] = {1,8,32,64,128,256,1024}; Das ist in diesem Fall das gleiche wie uint32_t. 'long' ist aber nicht bei jedem Compiler bzw. jeder Maschine gleich definiert.
Michael G. schrieb: >> #include <inttypes.h> > Kennt Codevision nicht, mit > #include <stdint.h> > sollte es klappen. Das wäre dann auch C99 konform. <inttypes.h> ist ebenfalls in C99 enthalten, und bindet nach Standard auch <stdint.h> mit ein. Andreas
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.