我想用C++选择字符串的前8个字符.现在我创建一个长度为8个字符的临时字符串,并用另一个字符串的前8个字符填充它.
但是,如果另一个字符串不是8个字符长,我留下了不需要的空格.
string message = " "; const char * word = holder.c_str(); for(int i = 0; i如果
word
是"123456789abc"
,此代码正常工作并message
包含"12345678"
.但是,如果
word
更短,那么"1234"
消息最终就会出现"1234 "
如何选择字符串的前八个字符,如果短于8个字符,则如何选择整个字符串?
1> cadaniluk..:只需使用
std::string::substr
:std::string str = "123456789abc"; std::string first_eight = str.substr(0, 8);
他的问题很模糊,没有办法说出我们的答案是对的.它取决于OP在"删除字符串中其余字符"中的"字符串"所指的含义.
2> David Schwar..:只需在字符串上调用resize即可.