@ S. Lonci (lonci)
>Dabei wird die Zahl 0x1100 zuerst in eine Adresse konvertiert!
Was logisch ist, wenn man die Hintergründe von C kennt.
>Ist das notwendig?
Ja.
>Wenn ich mit
>int *ptr = 0x0150;
>die Adresse zuweise funktioniert das genau so!?
Nein, dein Compiler gibt mindestens ne Warnung aus, ggf. einen Fehler.
>Kann mir da bitte wer den Grund der Konvertierung erklären?
0x150 ist eine KONSTANTE (Integer), kein konstanter Pointer.
>int *ptr = (int *) 0x1100;
Das ist keine Konvertierung sondern ein Cast, der dem Compiler sagt,
"Hey du, das IST ein Pointer auf die konstante Adresse 0x1100".
Wo ist das Problem? Die paar Zeichen mehr eintippen?