通信协议之广播---recvfrom 放回客户端的ip地址第一次全为0.0.0.0
2024-09-01 19:09:31
遇到一个很恶心的问题。
while(1)
{
recvfrom(sockfd, readbuff, UDP_CMD_BUFF_LENGTH - 1, 0, (struct sockaddr *)&Glob_remot_88_port_add, &len);
PRINT("[recevudp]len %d IP is %s\n", len, inet_ntoa(Glob_remot_88_port_add.sin_addr));
}
这个函数, 第一次接受打印出的发送方IP地址总是0.0.0.0;
困扰了很久。直到今天!终于解决了。
在recvfrom之前加一句: len = sizeof(struct sockaddr);
就OK了!!!
http://blog.163.com/ztlchina@126/blog/static/82597716201072464553283/
http://bbs.csdn.net/topics/360141164
最新文章
- 30个要点帮你完成java代码优化
- javascript中通过匿名函数进行事件绑定
- qml基础学习 基础概念
- Material
- hdu 1044 Collect More Jewels(bfs+状态压缩)
- 菜鸟帮你跳过openstack配置过程中的坑
- onCreate和onStart谁的开销大?
- windows中用bat脚本更改环境变量
- BZOJ2872 : 优莱卡
- ADO.NET 实体数据模型 异常-“序列化类型为 XX 的对象时检测到循环引用”
- Golang中defer、return、返回值之间执行顺序的坑
- CF&;&;CC百套计划2 CodeChef December Challenge 2017 Total Diamonds
- NOI Linux学习
- C# 获取窗口句柄并且关闭应用程序
- 改变datagrid中指定单元格的值
- 关于VS2017提示I/O文件操作函数需要加上_s的解决办法
- abaqus中的约束
- URAL - 2065 Different Sums (思维题)
- Linux 简单的Shell输出
- (15)MOG背景减少