在socket函數和bind函數之間加入一段代碼:
// 建立服務器端socket
if((server_sockfd = socket(AF_INET, SOCK_STREAM, 0))<0)
{
perror("server_sockfd creation failed");
exit(EXIT_FAILURE);
}
// 設置套接字選項避免地址使用錯誤
int on=1;
if((setsockopt(server_sockfd,SOL_SOCKET,SO_REUSEADDR,&on,sizeof(on)))<0)
{
perror("setsockopt failed");
exit(EXIT_FAILURE);
}
// 將套接字綁定到服務器的網絡地址上
if((bind(server_sockfd,(struct sockaddr *)&server_address,sizeof(struct sockaddr)))<0)
{
perror("server socket bind failed");
exit(EXIT_FAILURE);
}