Forum: Compiler & IDEs C cast mit einem & ?


von Simon (Gast)


Lesenswert?

1
 *pucFrame = ( UCHAR * ) & ucRTUBuf[MB_SER_PDU_PDU_OFF];

Wieso ist das & da dazwischen und was macht es?


( UCHAR * ) <- Ist ein cast der pointer addresse?

von Karl H. (kbuchegg)


Lesenswert?

Simon schrieb:
>
1
>  *pucFrame = ( UCHAR * ) & ucRTUBuf[MB_SER_PDU_PDU_OFF];
2
>
>
> Wieso ist das & da dazwischen und was macht es?

Es ist derselbe Operator, der er auch wäre, wenn der Cast nicht da wäre:
Adress Of

Nimm die Adresse von ucRTUBuf[MB_SER_PDU_PDU_OFF]
und nachdem du die Adresse hast, wechsle den Datentyp dieses Pointers zu 
UCHAR *

von Simon (Gast)


Lesenswert?

ach soooo. oh man
das ist kein UND sondern das Fragt nach der Adresse selbst.
genauso wie bei variablen, ok alles klar.

"&ucRTUBuf[MB_SER_PDU_PDU_OFF];"

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.