hi @Rolf B
printf sieht nur den Speicherinhalt. Ob 4 Bytes Speicher ein unsigned int, ein signed int, ein float oder ein char[4] Array repräsentieren, kann es nicht wissen.
Auch klar, %i %d %u
sind ja nur Formate für die Ausgabe. Und %d nehme ich wenn ich zusätzlich zu einem integer das Vorzeichen sehen will. Wenn ich alles mit %u ausgebe, sehe ich ja das Vorzeichen nicht.
Ich finde, uint32_t host = -3 ;
sollte eigentlich der Compiler beanstanden. Meinst Du nicht auch?
MfG