关于socket编程数据发送和接受的感受(wm和pc之间)

在做wm5.0和pc之间的socket通讯时,要注意的是:send和recv函数里要发送的自定义结构体数据时不能以指针形式发送和接受,必须是实体,并且结构体里的组员要求是char类型的不能是Tchar类型,否则接受的数据有问题。本来我是想传送一个结构体并且组员都是TCHAR类型的数组,但接受时数据错误,改成char类型的就没问题,我认为是send和recv函数第2个参数必须是char ×的限制导致的问题,TCHAR和char的大小是不一样的。最后只能在接受到数据后在转换成TCHAR

如:typedef struct tagStruct1{ char a[20]; char b[20]; }test; 

        test  test1;//不能声明成指针test *test1;

        send(socketNum, ( char * )&test1, sizeof( test ), 0 );//recv形式也是如此

这样发送接受就不会有问题。

大家在使用socket编程时如有更好的方法传送结构体数据,请指教

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值