Variable binär ausgeben / beschreiben



  • Hallo habe z.B. eine float* Variable (also eigentlich einen Zeiger auf eine float-Variable) und möchte nun die Bits, die an dieser Stelle stehen, ausgeben: Entweder binär, oder noch besser dezimal, also 00101011011 bzw. 3242

    Wie geht das?



  • float f = 0.123;
    float * pf = &f;
    long * pl = (long *)pf;
    cout << *pl;
    


  • brainesic schrieb:

    Wie geht das?

    Du musst die Daten reinterpretieren. Dazu gibt es in C++ reinterpret_cast.

    typedef int int_with_float_size; // plattform-spezifisch anpassen
    float* a = bla;
    int_with_float_size* b = reinterpret_cast<int_with_float_size*>(a);
    int_with_float_size b_value = *b;
    

    b_value kannst du nun dezimal ausgeben, da es eine Ganzzahl ist. Die binäre Ausgabe ist ebenfalls möglich, du musst halt nur Bit für Bit extrahieren.


Anmelden zum Antworten