King_shuai 2017-02-25 19:50 采纳率: 0%
浏览 1047

linux socket 接收问题

send完后接收时 用recv返回值判断接收到了54个字节,与TCP调试助手显示的一样,但是从接收buf里去读数据却没有,打印buf也是空的,

 ret=send(sockfd,(char*)&send_buf,7+num_len,0);
 if(ret<0){printf("CODE:7 send Maintain tel error!\n");return(-1); }
 ret=recv(sockfd,rcebuf,128,0);
 if(ret<0){printf("CODE:6 request TEL data error!\n");return(-1);}
 printf("tel_len:%d\n",ret); //可以打印出54 说明接收到数据了
 printf("rcebuf:%s\n",rcebuf); //这里打印为空
 fd=open("/config/a.txt",O_RDWR);
 write(fd,rcebuf,128);
 用TCP调试助手接收也正确,
 ![图片说明](https://img-ask.csdn.net/upload/201702/26/1488052094_779202.png)
  • 写回答

3条回答 默认 最新

  • King_shuai 2017-02-25 19:47
    关注

    图片说明

    评论

报告相同问题?

悬赏问题

  • ¥15 opencv 无法读取视频
  • ¥15 用matlab 实现通信仿真
  • ¥15 按键修改电子时钟,C51单片机
  • ¥60 Java中实现如何实现张量类,并用于图像处理(不运用其他科学计算库和图像处理库))
  • ¥20 5037端口被adb自己占了
  • ¥15 python:excel数据写入多个对应word文档
  • ¥60 全一数分解素因子和素数循环节位数
  • ¥15 ffmpeg如何安装到虚拟环境
  • ¥188 寻找能做王者评分提取的
  • ¥15 matlab用simulink求解一个二阶微分方程,要求截图