在字符串末尾添加一个字符
时间: 2023-10-21 12:03:32 浏览: 68
在 C++ 中,我们可以使用 `push_back` 函数向字符串的末尾添加一个字符。同时,我们也可以使用 `+=` 运算符将一个字符添加到字符串末尾。以下是两种方法的示例代码:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "hello";
char ch = '!';
// 使用 push_back 添加字符
str.push_back(ch);
cout << str << endl; // 输出 "hello!"
// 使用 += 运算符添加字符
str += ch;
cout << str << endl; // 输出 "hello!!"
return 0;
}
```
需要注意的是,字符串是一个字符数组,因此我们也可以通过直接修改字符串数组中的最后一个元素来向字符串末尾添加一个字符。但是这种方法不够安全,可能会导致数组越界等问题。因此,不建议使用这种方法。
相关问题
怎么在字符串末尾添加换行符
要在字符串末尾添加换行符,可以在字符串中添加转义字符`\n`,例如:
```
string1 = "Hello, World!\n"
```
这将在字符串的末尾添加一个换行符,使输出在下一行开始。当你使用`print()`函数打印字符串时,也会自动换行。例如:
```
print("Hello, World!\n")
```
输出为:
```
Hello, World!
```
请注意,这里字符串末尾的`\n`是必需的,否则在输出时不会自动换行。
wstring类型的字符串末尾添加子串
可以使用wstring的"+"运算符或append函数将子串添加到字符串的末尾。
使用"+"运算符:
```
wstring s = L"hello";
wstring sub = L" world";
s = s + sub;
// 现在s的值为L"hello world"
```
使用append函数:
```
wstring s = L"hello";
wstring sub = L" world";
s.append(sub);
// 现在s的值为L"hello world"
```
需要注意的是,由于wstring类型的字符串使用宽字符编码,因此在添加子串时需要使用宽字符的字符串常量或变量。如果要添加的子串是一个窄字符的字符串(例如char*类型),需要先将其转换为宽字符的字符串再进行添加。可以使用MultiByteToWideChar函数来将窄字符的字符串转换为宽字符的字符串。