如何将部分字符数组附加到字符串?

Posted

技术标签:

【中文标题】如何将部分字符数组附加到字符串?【英文标题】:How can I append part of an array of characters to a string? 【发布时间】:2016-11-04 06:53:41 【问题描述】:

假设我有一个 std::string 对象和一个以 null 结尾的字符数组(或 C 样式字符串):

std::string str("This is a ");

const char* cstr = "strings are a really important data type.";

如何以最简洁和最有效的方式将 C 样式字符串的前 N ​​个字符(在本例中为 6 个,以便 str 将包含 This is a string)附加到 std::string

【问题讨论】:

你不会相信,但是有一个函数叫做append,即str.append(cstr, 6); 阅读一些文档? en.cppreference.com/w/cpp/string/basic_string @PiotrSkotnicki 我真傻。出于某种原因,我认为 append 仅适用于单个字符。 【参考方案1】:

append 方法怎么样?

str.append(cstr, 6);

【讨论】:

为了完整性,您可以使用cstr + n 从第 n 个(从零开始)字符开始。【参考方案2】:

您可以将const char*转换为string,然后将其添加以进行连接-

std::string a("Hello ");  
const char* b="World!!!";  
std::string a1(b,5);  
a=a+a1;  

【讨论】:

以上是关于如何将部分字符数组附加到字符串?的主要内容,如果未能解决你的问题,请参考以下文章

如何将字符串数组附加到共享内存? C

将字符串附加到 Matlab 数组

将 JSON 数组附加到字符串数组

将数组 int 附加到字符串数组

Java - 将引号附加到数组中的字符串并连接数组中的字符串

你能用 swift 将字符串附加到 Firebase 数组吗