uint8_t
ist Standard C und stellt einen vorzeichenlosen 8-Bit-Ganzzahltyp dar. Wenn Sie sich auf einem System befinden, das keine adressierbaren 8-Bit-Einheiten hat, wird dies nicht definiert; andernfalls ist es wahrscheinlich eine typedef
für unsigned char
.
Alles mit __
darin ist für die Implementierung reserviert. Dies bedeutet, dass Compiler-Autoren und Autoren von Standardbibliotheken diese Bezeichner verwenden können, ohne sich Gedanken über Namenskonflikte mit Benutzercode machen zu müssen. Sie können dies sehen, wenn Sie sich die Interna der Standardbibliotheksimplementierung ansehen.
u8
ist kein Standard, bedeutet aber mit ziemlicher Sicherheit dasselbe wie uint8_t
. Ein Grund, der u8
verwendet werden könnte, befindet sich in Code, der vor uint8_t
geschrieben wurde wurde zu Standard C hinzugefügt.