struct mit union speichern
-
hi
hier wird die struktur in_addr beschrieben
http://msdn.microsoft.com/de-de/library/zx63b042.aspx
ok, ich habs mal leserlich formatiertstruct in_addr { union { struct { unsigned char s_b1, s_b2, s_b3, s_b4; } S_un_b; struct { unsigned short s_w1, s_w2; } S_un_w; unsigned long S_addr; } S_un; };und schwupp - schon kommt die fraggää:
wenn ich die einzelnen werte der struktur speichern will. wie finde ich heraus,
welche der unions gerade aktiv ist?
danke
-
Du wirst wohl nicht drum rumkommen mit enum aufzuzählen was alles setzbar ist und dir zu merken, was gesetzt wurde.
L. G.
S. D.
-
wie finde ich heraus, welche der unions gerade aktiv ist?
a) Es ist nur eine Union.
b) Alle sind aktiv. D.h fuellst du sie mit einemunsigned long, dann kannst du diesen auch byteweise ueber diechars auslesen.
-
knivil schrieb:
b) Alle sind aktiv. D.h fuellst du sie mit einem
unsigned long, dann kannst du diesen auch byteweise ueber diechars auslesen.Das ist raffiniert!

-
knivil schrieb:
b) Alle sind aktiv. D.h fuellst du sie mit einem
unsigned long, dann kannst du diesen auch byteweise ueber diechars auslesen.Kann man nicht, aber mit Visual C++ funktioniert das normalerweise.
-
füllen tut die union accept.
ich wollte die ip speichern, ohne inet_ntoa zu bemühen.
geht wohl nicht, egal.
