c++字符串substr
时间: 2024-03-24 19:34:21 浏览: 58
C++中的字符串substr()函数用于从一个字符串中提取子字符串。它接受两个参数:起始位置和子字符串的长度。返回的是一个新的字符串,包含了原始字符串中指定位置和长度的字符。
下面是substr()函数的使用示例:
```cpp
#include <iostream>
#include <string>
int main() {
std::string str = "Hello, World!";
std::string sub = str.substr(7, 5); // 从位置7开始提取长度为5的子字符串
std::cout << sub << std::endl; // 输出 "World"
return 0;
}
```
在上面的示例中,我们定义了一个字符串`str`,然后使用substr()函数从位置7开始提取长度为5的子字符串,将结果赋值给了变量`sub`。最后,我们输出了`sub`的值,即"World"。
需要注意的是,substr()函数的第一个参数是起始位置,从0开始计数。如果起始位置超过了字符串的长度,或者指定的长度超过了剩余的字符数,那么substr()函数会返回剩余的所有字符。
相关问题
C++ 字符串 substr的用法
C++中的字符串substr()函数可以用来截取子字符串,它的参数可指定截取子字符串的起始位置和长度,例如:
```
string str = "hello world";
string sub = str.substr(6, 5); // 从下标为6的字符开始截取长度为5的子字符串
cout << sub << endl; // 输出 "world"
```
需要注意的是,起始位置的下标从0开始,长度参数是可选的,不指定时默认截取到字符串末尾。
c++截取字符串substr
在C++中,可以使用`substr()`函数截取字符串中的子串。`substr()`函数接受两个参数,第一个参数是截取的起始位置,第二个参数是截取的子串长度。
下面是一个使用`substr()`函数截取子串的示例:
```c++
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str = "Hello, this is a test string.";
// 截取子串
string sub_str = str.substr(16, 4);
cout << "Sub string: " << sub_str << endl;
return 0;
}
```
输出结果为:
```
Sub string: test
```
在上面的示例中,我们使用`substr()`函数从字符串`"Hello, this is a test string."`中截取子串`"test"`。`substr()`函数的第一个参数为截取的起始位置,这里是`16`,即子串在字符串中的起始位置;第二个参数为截取的子串长度,这里是`4`,即子串的长度。截取完成后,将子串赋值给变量`sub_str`,并输出结果。
需要注意的是,`substr()`函数并不会改变原始字符串,而是返回截取的子串。如果需要修改原始字符串,可以使用`erase()`和`insert()`等函数。
阅读全文