bind出现Address already in use解决方法

在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);  

}

原文地址:https://www.cnblogs.com/argenbarbie/p/4118783.html