Hab hier n problem mit folgendem code:
1 | double workarray[WIDTH][HEIGHT] = (double *)malloc((WIDTH*HEIGHT*4)); |
gcc meckert was von "invalid initializer" . . . ich hab keine Ahnung warum. . . Sieht einer von euch, was da faul ist?
|
Forum: Compiler & IDEs Problem mit mallocHab hier n problem mit folgendem code:
gcc meckert was von "invalid initializer" . . . ich hab keine Ahnung warum. . . Sieht einer von euch, was da faul ist? Wenn du ein Array definierst brauchst du kein malloc mehr, der Speicher wird automatisch reserviert.
Und das gewöhn dir mal ganz schnell ab, das ist fehlerträchtig und wie man sieht hast du den Fehler auch gleich gemacht. So schaut's gut aus:
Ein double hat übrigens 8 Byte... I_ H. wrote: > Ein double hat übrigens 8 Byte... Er kann auch 12 oder 16 haben. Dafür gibt's ja sizeof. Beim AVR-GCC hat er derzeit übrigens wirklich 4 Byte. Wenn du das zweidimensionale Array tatsächlich dynamisch anlegen willst, geht das so:
Hinterher kannst du dann in gewohnter Weise mit
darauf zugreifen. ... oder sauberer:
Und warum nicht einfach .. ?
Sofern WIDTH und HEIGHT konstant sind. 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
Noch kein Account? Hier anmelden.
|
|