如何连接字符
How to concatenate characters?
我正在尝试连接字符串中的字符以检查它是否是一个单词。例:
string s1 = "battle";
string s2 = "all";
string s3 = "lolo";
string s4 = "leaf";
string s5 = s1[0] + s2[0] + s3[0] + s4[0]
但是 S5 是 Unicode 的总和,而不是连接。我也尝试使用附加方法,例如
string s5 = "";
s5.append(s1[0]);
但这说明没有匹配函数可以调用。我将不胜感激任何帮助
以下是实现
所需目标的几种方法:
std::string s1 = "battle";
std::string s2 = "all";
std::string s3 = "lolo";
std::string s4 = "leaf";
{
// thanks to Mooing Duck for this one
std::string s5 = {s1[0], s2[0], s3[0], s4[0]/*, ' '*/};
std::cout << s5 << "n";
}
{
// thanks to Igor Tandetnik for this one
std::string s5 = std::string() + s1[0] + s2[0] + s3[0] + s4[0];
std::cout << s5 << "n";
}
{
std::string s5;
for (const auto &str : { s1, s2, s3, s4 })
s5.push_back(str.at(0));
std::cout << s5 << "n";
}
{
std::stringstream ss;
ss << s1[0] << s2[0] << s3[0] << s4[0];
std::string s5 = ss.str();
std::cout << s5 << "n";
}
{
std::string s5 = std::string(1, s1[0]) + std::string(1, s2[0]) + std::string(1, s3[0]) + std::string(1, s4[0]);
std::cout << s5 << "n";
}
{
std::string s5;
s5.resize(4);
s5[0] = s1[0];
s5[1] = s2[0];
s5[2] = s3[0];
s5[3] = s4[0];
std::cout << s5 << "n";
}
{
std::string s5;
s5 += s1[0];
s5 += s2[0];
s5 += s3[0];
s5 += s4[0];
std::cout << s5 << "n";
}
相关文章:
- 在函数中连接两个字符,并在 C++ 中返回输出
- 为什么一个表达式中的 std::string 连接给出的结果与逐个字符不同的结果?
- 在c++中连接两个字符
- 连接常量字符* C++
- 如何编写模板函数来添加整数但连接字符串和字符类型?
- 为什么C++中不允许连接两个常量字符*?
- 如何连接字符*和字符串?
- 如何将多个字符连接成一个整数
- 如何连接字符
- 如何通过1024字节缓冲区和强力冲洗在插座连接上发送6个字符的C弦
- 为什么一次打印一个字符比提前连接它们慢
- 字符和 int 连接何时会导致 seg 错误?
- 使用 << 或 >> 连接无符号字符数组
- C++ 将两个字符 * 连接到命令行参数的 LPTSTR
- 构造字符连接和getenv()
- C++ :将字符连接到字符串
- 当您在 C++ 中将字符连接到字符串时会发生什么
- 将字符 * 连接到字符串
- 将 LPTSTR 与常量字符连接起来 * (Win32 C++)
- 将几个不同的字符连接成一个字符串