将子字符串从char *复制到std :: string的优雅方法

时间:2013-09-01 13:07:25

标签: c++ string

我有char*

char* line = "This is a great day";
string subLine;

我希望subLine包括:is a great

(从第5位复制,接下来的10个字符)。

有没有办法做到这一点,而不是将char*转换为std::string

2 个答案:

答案 0 :(得分:11)

您可以使用this page中的第五个构造函数,如下所示:

char* line = "This is a great day";
string subLine(&line[5], 10);

答案 1 :(得分:3)

您可以使用std::string::append

subLine.append(line+5, 10);