Die Konvertierung Binärzahl -> Dezimalstring macht printf selbst, du musst allerdings zaehler.as_long übergeben statt zaheler.
Das was du mit dem Union machst nennt sich übrigens type-punning. Unions sind eigentlich NICHT dafür ausgelegt (der C-Standard garantiert dir NICHT dass der Union das tut was du von ihm erwartest), zumindest für den GCC gibt es aber eine entsprechende Aussage in der Dokumentation die das gewünschte Verhalten zusichert.
mfG
Markus
Lesezeichen