Rolf B: c Mathematik über Binary

Beitrag lesen

Hallo JürgenB,

jups. printf("%d\n", inet_a2n(1,1,168,192)) schiebt zwei Werte auf den Stack - die Adresse des Formatstrings und ein 32bittiges Gebilde, das aus inet_a2n zurückkommt.

Wie dieses 32bittige Gebilde zu deuten ist, und wieviele Daten auf dem Stack erwartet werden, legt der Formatstring fest. Das muss alles zueinander passen. Ein printf("%x %x %x\n") ist ein Stack-Peek. printf("%s\n") ist dagegen ein BSOD der darauf wartet zu passieren.

Es ist einfach schön, wieviel Mühe und Gedanken einem die Variant-Variablen aus Perl oder PHP abnehmen. Dann wissen die Library-Funktionen ganz von selbst Bescheid.

Rolf

--
sumpsi - posui - clusi