Pointer Adresse *übergeben*



  • Hallo,

    Soll nur ein kleiner Witz sein im Titel^^

    Also, folgendes Szenario:

    Ich hab die Adresse einer Variable im Arbeitsspeicher.

    Könnte ich jetzt im Code schreiben:

    int main(int argc, char** argv)
    {
        int* pointerchen = 1DEADF; //Irgendwelche Zahlen und Buchstaben...ned beachten.
    
    }
    

    Is that possiblé?

    I wanna thank my mum, my dad and my body....THANK YOU VERY MUCH!  :D
    

    Danke im voraus!



  • int* pointerchen = reinterpret_cast<int*>(0x1DEADF);
    


  • int main(int argc, char** argv)
    {
        int* aaliyah = reinterpret_cast<int*>(0xDEADBABE); // antwort auf irgendeine dumme frage, nicht weiter drüber nachdenken...
    }
    


  • volkard schrieb:

    int* pointerchen = reinterpret_cast<int*>(0x1DEADF);
    

    Ohhh, c´est brilliant! Merci, merci!!

    War aber irgendwie klar, wenn ich nur 0x1DEADF geschrieben hätte, würde der Compiler denken, dass dies eine nicht erzeugte Variable wäre.

    Je t´aime volkard! merci beaucoup!



  • IfDunkelDannBlödeFrage schrieb:

    War aber irgendwie klar, wenn ich nur 0x1DEADF geschrieben hätte, würde der Compiler denken, dass dies eine nicht erzeugte Variable wäre.

    Die Begründung ist Quatsch.

    Wenn du nur 0x1DEADF geschrieben hättest, würde der Compiler das für ein int halten. Und es gibt keine implizite Konvertierung von int nach int*. Das ist schon alles.



  • IfDunkelDannBlödeFrage schrieb:

    War aber irgendwie klar, wenn ich nur 0x1DEADF geschrieben hätte, würde der Compiler denken, dass dies eine nicht erzeugte Variable wäre.

    Eine Konstante wird keine Variable, egal ob du sie castest oder sonstwas mit ihr machst...


Anmelden zum Antworten