在C语言中,绑定Socket的典型方法如下所示:
我想知道为什么从
为什么这里的类型转换有效?
我不是在问我们为什么要进行强制转换,这已经在这里回答了。我在问为什么它有效。
bind
。int server_socket_fd = socket(AF_INET, SOCK_STREAM, 0);
struct sockaddr_in addr;
int port_number = 55555;
addr.sin_family = AF_INET;
addr.sin_addr.s_addr = htonl(INADDR_ANY);
addr.sin_port = htons(port_number);
int result = bind(server_socket_fd,(struct sockaddr *)&addr , sizeof(addr));
if(bind_result > 0)
{
// Stuff
}
我想知道为什么从
sockaddr_in
转换为sockaddr
的类型转换有效,因为我找不到任何文档说明为什么它有效。似乎每个人都这样做。为什么这里的类型转换有效?
我不是在问我们为什么要进行强制转换,这已经在这里回答了。我在问为什么它有效。