linux Ubuntu 中,写了一个简单的UDP协议,只用了sendto 与recvfrom ,出错了 20
在于开发板连接时,PC与板子可以互相PING通,但是UDP协议传送不过去数据,求帮忙部分程序server端setsockopt(sockfd,SOL_SOCKET,SO_...
在于开发板连接时,PC与板子可以互相PING通,但是UDP协议传送不过去数据,求帮忙部分程序 server端 setsockopt(sockfd,SOL_SOCKET,SO_BROADCAST,(char *)&on,sizeof(on)); server_sockaddr.sin_family=AF_INET; server_sockaddr.sin_port=htons(SERVPORT); server_sockaddr.sin_addr.s_addr=INADDR_ANY; bzero(&(server_sockaddr.sin_zero),8); int ret=bind(sockfd,(struct sockaddr*)&server_sockaddr,sizeof(server_sockaddr)); struct sockaddr_in clientAddr; int len =sizeof(clientAddr); while(1){ if((recvbytes=recvfrom(sockfd,buf,MAXDATASIZE,0,(struct sockaddr*)&clientAddr,&len))==-1)client端 setsockopt(sockfd,SOL_SOCKET,SO_BROADCAST,(char *)&on,sizeof(on)); serv_addr.sin_family=AF_INET; serv_addr.sin_port=htons(SERVPORT); serv_addr.sin_addr.s_addr=INADDR_ANY; bzero(&(serv_addr.sin_zero),8); for(i=0;i<MAXTRY;i++) { if((sendbytes=sendto(sockfd,"100",3,0,(struct sockaddr*)&serv_addr,sizeof(serv_addr))==-1))
展开
1个回答
展开全部
在百度的编辑选项里面有可以写代码的,最起码代码格式整齐,容易阅读。
客户端的serv_addr.sin_addr.s_addr=INADDR_ANY这里使用服务器的固定地址试试。广播模式这个地址好像是用255.255.255.0的(局域网下)。
客户端的serv_addr.sin_addr.s_addr=INADDR_ANY这里使用服务器的固定地址试试。广播模式这个地址好像是用255.255.255.0的(局域网下)。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询