[C/C++] 关于recv返回-1错误 recv #include <sys/socket.h>#include <netinet/in.h>#include <netdb.h>…………这是我的代码,send数据正常,但是recv时 返回-1,请问咋回事,查了半天,没有结果,我是新手[ 本帖最后由 xiehc 于 2009-4-13 16:27 编辑 ] 收藏 分享 suiwenan 发短消息 加为好友 suiwenan 当前离线 UID 21332154 帖子 25 精华 0 积分 0 阅读权限 10 在线时间 0 小时 注册时间 2009-4-8 最后登录 2009-5-25 临时会员 该用户从未签到 帖子 25 主题 14 积分 0 阅读权限 10 注册时间 2009-4-8 沙发 发表于 2009-4-13 11:50 | 只看该作者 那协议地址结构 赋值不对吧 连接地址应该是目的地址吧 TOP xiehc 发短消息 加为好友 xiehc 当前离线 UID 11122298 帖子 56 精华 0 积分 0 阅读权限 10 在线时间 0 小时 注册时间 2007-8-16 最后登录 2010-5-27 临时会员 该用户从未签到 帖子 56 主题 22 积分 0 阅读权限 10 注册时间 2007-8-16 板凳 发表于 2009-4-13 12:00 | 只看该作者 协议地址赋值应该没事,我send正确但是recv错误 TOP 雨过白鹭洲 发短消息 加为好友 雨过白鹭洲 当前离线 UID 20749293 帖子 1422 精华 0 积分 0 阅读权限 10 在线时间 1 小时 注册时间 2008-8-21 最后登录 2010-8-18 临时会员 该用户从未签到 帖子 1422 主题 9 积分 0 阅读权限 10 注册时间 2008-8-21 4楼 发表于 2009-4-13 12:18 | 只看该作者 看看errno不就清楚了 TOP xiehc 发短消息 加为好友 xiehc 当前离线 UID 11122298 帖子 56 精华 0 积分 0 阅读权限 10 在线时间 0 小时 注册时间 2007-8-16 最后登录 2010-5-27 临时会员 该用户从未签到 帖子 56 主题 22 积分 0 阅读权限 10 注册时间 2007-8-16 5楼 发表于 2009-4-13 14:16 | 只看该作者 errno 是14 ,是Bad address,这是server的报错还是client的报错? TOP 乱.码 发短消息 加为好友 乱.码 当前离线 UID 20597539 帖子 234 精华 0 积分 0 阅读权限 10 在线时间 0 小时 注册时间 2009-8-11 最后登录 2009-8-11 临时会员 该用户从未签到 帖子 234 主题 30 积分 0 阅读权限 10 注册时间 2009-8-11 6楼 发表于 2009-4-13 15:08 | 只看该作者 socket()没判断返回值connect()没判断返回值send()没判断返回值就敢说send是正常的! TOP xiehc 发短消息 加为好友 xiehc 当前离线 UID 11122298 帖子 56 精华 0 积分 0 阅读权限 10 在线时间 0 小时 注册时间 2007-8-16 最后登录 2010-5-27 临时会员 该用户从未签到 帖子 56 主题 22 积分 0 阅读权限 10 注册时间 2007-8-16 7楼 发表于 2009-4-13 15:32 | 只看该作者 我server端已经收到我客户端send过去的数据,只是server返回给客户端的rec值,客户端收不到,errno是14 TOP hellioncu 发短消息 加为好友 hellioncu 当前离线 UID 20379236 帖子 1483 精华 0 积分 0 阅读权限 10 在线时间 1 小时 注册时间 2009-5-31 最后登录 2010-7-9 临时会员 该用户从未签到 帖子 1483 主题 72 积分 0 阅读权限 10 注册时间 2009-5-31 8楼 发表于 2009-4-13 16:17 | 只看该作者 你的char *buf都没申请内存,recv返回错误还算运气了 TOP xiehc 发短消息 加为好友 xiehc 当前离线 UID 11122298 帖子 56 精华 0 积分 0 阅读权限 10 在线时间 0 小时 注册时间 2007-8-16 最后登录 2010-5-27 临时会员 该用户从未签到 帖子 56 主题 22 积分 0 阅读权限 10 注册时间 2007-8-16 9楼 发表于 2009-4-13 16:27 | 只看该作者 是呀,忘了分配了,现在找到原因了,我的server端recv时用的socket描述符错了,应该用accept产生的,我用错了,实在太菜了,不好意思