当前位置: 技术问答>linux和unix
accept函数没有返回
来源: 互联网 发布时间:2016-06-05
本文导语: 在linux下面写了一个很简单的socket server和client,结果client connect显示成功了,但server的accept却不返回,请大家帮忙看一下 简化后代码如下: srver端 #include #include #include #include #include #define SERPORT 9050 #define ...
在linux下面写了一个很简单的socket server和client,结果client connect显示成功了,但server的accept却不返回,请大家帮忙看一下
简化后代码如下:
srver端
#include
#include
#include
#include
#include
#define SERPORT 9050
#define BACKLOG 5
#define MAX_BUF_SIZE 100
void main()
{
int sockfd,clientfd,clientlen,datalen;
struct sockaddr_in sersock,clientsock;
char buf[MAX_BUF_SIZE+6];
char buf2[MAX_BUF_SIZE+1];
if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1)
{
printf("create socket failedn");
return;
}
memset(&sersock,0,sizeof(sersock));
memset(&clientsock,0,sizeof(clientsock));
sersock.sin_family=AF_INET;
sersock.sin_addr.s_addr=htons(INADDR_ANY);
sersock.sin_port=htons(SERPORT);
if(bind(sockfd,(struct sockaddr *)&sersock,sizeof(struct sockaddr))
简化后代码如下:
srver端
#include
#include
#include
#include
#include
#define SERPORT 9050
#define BACKLOG 5
#define MAX_BUF_SIZE 100
void main()
{
int sockfd,clientfd,clientlen,datalen;
struct sockaddr_in sersock,clientsock;
char buf[MAX_BUF_SIZE+6];
char buf2[MAX_BUF_SIZE+1];
if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1)
{
printf("create socket failedn");
return;
}
memset(&sersock,0,sizeof(sersock));
memset(&clientsock,0,sizeof(clientsock));
sersock.sin_family=AF_INET;
sersock.sin_addr.s_addr=htons(INADDR_ANY);
sersock.sin_port=htons(SERPORT);
if(bind(sockfd,(struct sockaddr *)&sersock,sizeof(struct sockaddr))
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
站内导航:
特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!