在编写服务器套接字编程时是否有必要将 socketfd 绑定到 IP 地址。我的意思是可以在不调用绑定系统调用的情况下编写套接字编程吗?就像套接字 -> 监听 -> 接受 -> 读/写/ -> 关闭。
问问题
163 次
2 回答
2
套接字应该绑定到端口或 unix 套接字文件。你的意思是you don't want to define port number for listen
?然后绑定端口号 0。它适用于随机端口。
memset((char *) &reader_addr, 0, sizeof(reader_addr));
reader_addr.sin_family = PF_INET;
reader_addr.sin_addr.s_addr = htonl(INADDR_ANY);
reader_addr.sin_port = 0;
if (bind(server_fd, (struct sockaddr *)&reader_addr, sizeof(reader_addr)) < 0) {
perror("reader: bind");
exit(1);
}
于 2013-06-25T03:52:14.240 回答
1
您bind
在服务器端使用。
简单地想象它是您办公室的开关板。给bind
它一个电话号码,以便其他人知道要拨打什么号码。接线员listen
接听电话并接通电话(即处理它)。
于 2013-06-25T03:55:47.980 回答