Hi Hab da mal ein Problem. Es geht um die Realisirung eines FIFOs der in Speicher an einer bestimmten Stelle liegen muss. /********************************/ typedef struct { unsigned long hans; unsigned long wurst; } queue; queue *p; p=(queue *)=0x70000000; p->hans=0xabc; /********************************/ Dieses funktioniert soweit. Ich brauche jetzt an der Stelle nicht ein Element sonder ein Array. Mir fehlt gerade der Kaffee. :-(
/********************************/ typedef struct { unsigned long hans; unsigned long wurst; } queue; queue *p; p=(queue *)0x70000000; //<----------------- p->hans=0xabc; /********************************/ so meinte ich das natürlich
> Dieses funktioniert soweit. Ich brauche jetzt an der Stelle nicht > ein Element sonder ein Array. Geh ich richtig in der Annahme, dass der Speicher an dieser Stelle irgendwo anders her kommt? Na ja, wenn dort ein Array liegt. dann benutz es halt wie ein Array p[0].hans = 0xabc; p[1].hans = 0x0123; p[2].wurst = 20; Das ist einer der Fälle wo der Array-Pointer Zusammenhang und die damit verbundene Syntaxangleichung für dich arbeitet.
Der Speicher liegt in einem Adressraum von 32Bit irgendwo in der Mitte. Ist ein Controller auf einem FPGA. Hast aber Recht. Das funktioniert so. Vielen Dank.
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.