Frage zu Winsock



  • Hallo, wofür steht hier das sizeof ??

    sockaddr_in sin;
    sin.sin_port=htons(12345);
    sin.sin_addr.s_addr=inet_addr("127.0.0.1");
    sin.sin_family=AF_INET;

    rc = connect(kSock,(sockaddr*)&sin, sizeof(sin));



  • Damit übergibst du connect () die Größe deiner sockaddr_in Struct. Warum man das braucht weiß ich auch nicht, aber wahrscheinlich ist es einfach ein Überbleibsel aus "alten Zeiten".



  • basti33 schrieb:

    Warum man das braucht weiß ich auch nicht, aber wahrscheinlich ist es einfach ein Überbleibsel aus "alten Zeiten".

    Das braucht man, damit connect weiß, wie groß der dritte Parameter ist? Dort wird ja nur ein sockaddr-Zeiger übergeben. Die Struktur kann aber tatsächlich eine sockaddr_in, sockaddr_un, sockaddr_wasweissich sein, und die haben alle andere Größen.


Anmelden zum Antworten