当前位置:  开发笔记 > 编程语言 > 正文

一些C++的转换问题

如何解决《一些C++的转换问题》经验,为你挑选了1个好方法。

我正在做一个分布式程序(我不知道这是不是这个词,我用西班牙语学习过),我需要在某些进程之间发送和接收消息,乍一看非常简单.

当我想在同一个消息中发送两个整数时,它会变得复杂.使用send()你只能发送char*所以我使用了这个:

string s = to_string(valla) + " " + to_string(tiempo);
const char* buffNum = s.c_str();

一切都很好,直到我必须收到并"解码"消息.所以,如果我收到一个号码,我可以使用atoi(),现在的问题是,当我收到两个号码时,我该怎么做呢?

提前致谢.



1> 小智..:
const char* buffNum = s.c_str();

产生未定义的行为解除引用buffNum,很快s就会改变或超出范围.


如果你确定你的字符串没问题要解码,请使用std::istringstream:

std::istringstream iss(buffNum);

int num1, num2;

iss >> num1 >> num2;

推荐阅读
手机用户2402851335
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有