阅读量:0
std::basic_string
是 C++ 标准库中的一个模板类,表示可变长度的字符串。substr
是 basic_string
类的一个成员函数,用于从原字符串中提取子字符串。
substr
函数的原型如下:
basic_string substr(size_type pos = 0, size_type count = npos) const;
参数说明:
pos
:子字符串开始的位置。默认值为 0,表示从字符串的起始位置开始提取。count
:子字符串的长度。默认值为npos
,表示提取从pos
开始到字符串末尾的所有字符。
返回值:
- 返回一个新的
basic_string
对象,包含从原字符串中提取的子字符串。
示例代码:
#include<iostream> #include<string> int main() { std::string str = "Hello, World!"; // 提取从位置 7 开始的 5 个字符 std::string sub1 = str.substr(7, 5); std::cout << "Substring 1: "<< sub1<< std::endl; // 输出 "World" // 提取从位置 7 开始到字符串末尾的所有字符 std::string sub2 = str.substr(7); std::cout << "Substring 2: "<< sub2<< std::endl; // 输出 "World!" return 0; }
注意:如果 pos
大于等于原字符串的长度,substr
将抛出 std::out_of_range
异常。如果 pos + count
大于原字符串的长度,substr
将只提取从 pos
开始到字符串末尾的所有字符。