在xcode上使用zmq和protobuf

写一个项目需要用到zmq和protobuf
mac上的IDE是xcode

1.官网下载并安装
2.在xcode中配置search library和动态链接库
3.编写过程中,我用了c++ binder of protobuf,下载完成

在正式写的时候,我发现了一个坑。
如果proto导出为string
那么string无法用zmq直接传,这时候要把string转换为char *
这里有几个可以做的事:
1.proto直接导出为char *
char * a = mallorc(pb.size());
pb.serialarray(a,pb.size());
然后传输的时候,
memset到request.data里
2.string转换为char*
用string.c_str转换
然后再复制到request.data里
我发现得到后,会少很多。
总而言之,接收到的信息会变小
我总结是因为可能再哪一步转换的问题,string转char*会去掉空格或者截止到/0之类的

后来我发现、、并不是的。
而是因为接收端不能用strlen(char*)来作大小
而应该用recerive.size()

呵呵

最后连接服务器的时候
不要忘记开放端口

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值