oollooooo 2014-07-27 01:11 采纳率: 0%
浏览 2580

VC socket编程,数据接收问题

用VC socket编程时,用recv函数接收字符串数据,只能接收到前4个字符,多于4个字符的都是“烫”字乱码。这是什么问题?怎么解决?
char cs[100];
case FD_READ:
{
CString num=""; //定义字符串,用于保存待显示字符
::recv(s1,cs,strlen(cs),0); //接收来自客户端的字符串数据
GetDlgItem(IDC_TEXT)->GetWindowText(num); //获取消息显示框中原有的字符
num+="\r\n"; //添加换行符
num+=(LPTSTR)::inet_ntoa(add1.sin_addr); //将客户端IP换成字符串
num+=":\r\n"; //添加换行符
num+=(LPTSTR)cs; //将接收到的字符串添加到显示字符串
num+=":\r\n"; //添加换行符
GetDlgItem(IDC_TEXT)->SetWindowText(num); //将字符串显示到消息显示框
}

  • 写回答

2条回答

  • shiter 人工智能领域优质创作者 2015-01-20 03:21
    关注

    是不是不同的平台没有转换字符编码什么的,我猜测

    评论

报告相同问题?

悬赏问题

  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突