Cast to different C struct unsicherer Zeiger in Swift
Ich möchte die Posix-Socket-Funktionen aufrufensocket
undbind
von Swift.socket
ist ziemlich einfach - es dauertInt32
s, aberbind
verursacht ein Problem, weil ich ein @ hasockaddr_in
Zeiger, aber es will einsockaddr
Zeiger. In C wäre dies eine Besetzung wie:
bind(sock, (struct sockaddr *)&sockAddress, sizeof(sockAddress))
Hier ist ein Versuch in Swift:
let sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)
var sockAddress = sockaddr_in()
bind(sock, &sockAddress, UInt32(MemoryLayout<sockaddr_in>.size))
Dasbind
Zeile kann nicht kompiliert werden mit:kann den Wert vom Typ 'sockaddr_in' nicht in den erwarteten Argumenttyp 'sockaddr' konvertieren
Wie kann ich den Zeiger setzen?