c++ string截断
116浏览 · 2023-08-18 20:05:44
在C语言中,可以使用string的substr函数来截断字符串。substr函数的原型为:string substr(int pos = 0, int n) const;其中pos表示截取的起始位置,n表示截取的长度。如果不填n,则表示截取到字符串的末尾。以下是一个示例代码:
#include <iostream>
#include <string>
using namespace std;
int main() {
string s = "Hello World!";
string sub = s.substr(2); // 从下标为2的位置开始截取,截取到末尾
cout << sub << endl; // 输出 "llo World!"
sub = s.substr(0, 5); // 从下标为0的位置开始截取,截取长度为5
cout << sub << endl; // 输出 "Hello"
return 0;
在上述代码中,我们使用substr函数从字符串s中截取了两个子串。第一个子串从下标为2的位置开始截取,截取到末尾;第二个子串从下标为0的位置开始截取,截取长度为5。输出结果分别为"llo World!"和"Hello"。
相关问题
在 C++ 中,`std::string` 类型是一个动态字符串容器,它提供了一系列构造函数用于创建字符串。以下是几种常见的 `std::string` 构造函数:
1. **空初始化**:
```cpp
std::string(); // 创建一个空字符串
```
C++中获取字符串的长度可以使用`strlen`函数。`strlen`函数位于`<cstring>`(或者`<string.h>`)头文件中,可以用于计算以空字符('\0')结尾的字符串的长度。以下是一个示例:
```cpp
#include <iostream>
#include <cstring>
int main() {
const char* str = "Hello, C++!";
int length = strlen(str);
std::cout << "Length of the string: " << length << std::endl;
return 0;