Warum erzeugt folgende Anweisung diese Ausgabe (C)?

... komplette Frage anzeigen

2 Antworten

Der Kern der Formatierung ist "%3d", d.h. ein Integer soll ausgegeben werden, mit 3 Zeichen Platz. Das erste Argument ist  "0x1&&0x0" = "1 && 0" = 0, also wird "  0" ausgegeben. Mit dem Rest des FormatStrings ergibt sich das zu "x  0x".
Vermutlich willst Du eine Hex-Zahl ausgeben. Versuch mal den FormatString "0x%x".

Antwort bewerten Vielen Dank für Deine Bewertung

... weil 1 && 0 eine 0 ergibt

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?