substr函数定义:
substr( size_type pos = 0, size_type count = npos ) const;
参数:
pos - 第一个字符所在的位置
count - 子字符串的长度
返回值:
字符串所包含的子字符串 [pos, pos+count).
异常:
std::out_of_range if pos > size()
#include <string>
#include <iostream>
using namespace std;
int main()
{
string a = "0123456789abcdefghij";
//从位置十个开始取到末尾
string sub1 = a.substr(10);
cout << sub1 << '\n'; //abcdefghij
// 从位置5开始取,取三个
string sub2 = a.substr(5, 3);
cout << sub2 << '\n'; //567
// 取最后三个
string sub4 = a.substr(a.size()-3, 50);
cout << sub4 << '\n'; //hij
try {
//当所取位置超出了字符串长度,将抛出异常
string sub5 = a.substr(a.size()+3, 50);
cout << sub5 << '\n';
} catch(const std::out_of_range& e) {
cout << "pos exceeds string size\n";
}
}