如何将指针引用的字符串复制到另一个字符串?

时间:2013-06-30 18:16:34

标签: c++ string

例如,指针指向的字符串具有以下格式

msg->data.c_str()

现在,我想将此字符串存储到“本地”字符串中,例如:

string str = msg->data.c_str();

然而,这不起作用,我对指针操作并不熟悉。有人可以帮忙吗?

2 个答案:

答案 0 :(得分:4)

只是做:

string str = msg->data;

这将使用std::string字符串作为参数调用msg->data复制构造函数。结果是msg->data被安全地复制到str。是否立即复制实际内容,或者是否是写入时复制是由实现决定的。你不需要担心,它会“正常工作”。

答案 1 :(得分:1)

.c_str()允许从字符串中获取const char*。如果您对该字符串感兴趣,请删除c_str()