pointer



  • hi,

    warum kann man das hier machen? was macht (unsigned char*)data; ?

    char data[max_length];
    unsigned char* ptr = (unsigned char*)data;
    

    cu



  • Ich verstehe die Frage nicht...

    Es gibt in C 3 char typen:
    char, signed char und unsigned char.

    Was du hier gemacht hast ist nichts anderes als ein char feld angelegt und dann einen unsigned char zeiger darauf zeigen lässt.

    unsigned char wird zB gerne verwendet wenn man mit den rohen bytes oder bits umgehen will, also keine semantischen Buchstaben hat, sondern wirklich nur nen haufen bits - weil einem dann ja das "vorzeichen" nicht interessiert.

    bei signed können die werte ja positiv oder negativ sein, das wird durch ein spezielles bit angezeigt. char kann signed oder unsigned sein - ist vom compiler/plattform abhängig...

    naja, frag nochmal genauer nach was du jetzt eigentlich wissen willst.


Anmelden zum Antworten