【问题标题】: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);
  • @PiotrSkotnicki 我真傻。出于某种原因,我认为 append 仅适用于单个字符。

标签: c++ string c++11 string-concatenation c-strings


【解决方案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;  

【讨论】:

    猜你喜欢
    • 2012-01-12
    • 1970-01-01
    • 2017-06-06
    • 2023-01-19
    • 1970-01-01
    • 2016-03-02
    • 1970-01-01
    • 2011-01-18
    • 1970-01-01
    相关资源
    最近更新 更多