sockaddr_in
-
Huhu,
Könnte mir jemand den 4. Member erklären?
struct sockaddr_in { sa_family sin_family; unsigned short int sin_port; struct in_addr sin_addr; unsigned char pad[8]; };
Was gehört in pad[] rein?
Vielen Dank im voraus.
-
alles 0en
-
to pad ist englisch für auffüllen. => http://en.wikipedia.org/wiki/Data_structure_alignment
-
Das Pad-Feld kann man doch einfach in undefiniertem Zustand lassen, oder?
-
Solche Dinger in einem undefiniertem Zustand zu lassen ist immer gefährlich. Ich weiß jetzt zwar nicht ob das Feld überhaupt benutzt wird (ich habe es noch nie benutzt), aber man sollte es immer setzen.
Am einfachsten macht man das so:
memset(&sockaddr, 0, sizeof(struct sockaddr_in));
Das Ganze natürlich bevor man die restlichen Felder für seine Zwecke füllt.
blan
-
padding schrieb:
Das Pad-Feld kann man doch einfach in undefiniertem Zustand lassen, oder?
Ja.
-
Huhu,
vielen Dank für eure Antworten. Ganz besonders für den Link!