我有一个似乎很简单的问题,但我似乎无法解决这个问题......
我有一个字符串,可以调用它"HELLOWORLD"
,并且我有一个从我所做的其他工作中生成的数字,可以说它是4
如何返回第一个 ( "HELL"
) 并保持第二个 ( "OWORLD"
) 继续工作?
如果您已经有了要拆分的索引,那么最简单的方法是使用带有两个迭代器的字符串构造函数:
std::string original = "HELLOWORLD";
std::size_t index = 4;
std::string::iterator it = original.begin();
std::string part1(it, it + index);
std::string part2(it + index, original.end());
你试过了吗:
#include <string>
...
string thing = "HELLOWORLD";
thing.substr(0, 4); // => "HELL"
该substr
方法(来自string
库)将字符串从第一个索引返回到(但不包括)传递给它的第二个索引。
更新
我在理解你想要做的事情时遇到了一些麻烦。如果要获取字符串的结尾(即"OWORLD"
),可以执行以下操作:
thing.substr(4, thing.length()) // => "OWORLD"
这从第 4 个索引(包括)到第 N 个索引(不包括)。