这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » bind: Invalid argument

共1条 1/1 1 跳转至

bind: Invalid argument

高工
2018-04-23 14:50:41     打赏

出现此问题在于,listen函数在socket函数和bind函数之间。

例:

复制代码
 1 /*客户端程序开始建立sockfd描述符*/ 2     listenfd = socket(AF_INET,SOCK_STREAM,0); 3     if(listenfd < 0) 4     { 5         perror("socket"); 6         exit(1); 7     } 8     /*使用套接字选项,避免出错*/ 9     if(setsockopt(listenfd,SOL_SOCKET,SO_REUSEADDR,&opt,sizeof(opt)) != 0)10     {11         perror("setsockopt");12         exit(1);13     }14     /*服务器填充sockaddr结构*/15     bzero(&server,sizeof(server));    //对结构体清零16     server.sin_family = AF_INET;    //IPv4地址族17     server.sin_addr.s_addr = ntohl(INADDR_ANY);    //服务器IP址址18     server.sin_port = ntohs(8888);    //端口号19 20         /*设置允许连接的最大客户数*/21     if(listen(listenfd,MAX_LISTEN_QUE) != 0)22     {23         perror("listen");24         exit(1);25     }26     27     /*邦定sockfd描述符到IP地址*/28     int len = sizeof(struct sockaddr);29     if(bind(listenfd,(struct sockaddr *)&server,len) != 0)30     {31         perror("bind");32         exit(1);33     }34     35
复制代码

如此操作时,容易出现bind: Invalid argument




共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]