c 字符串截取1111
在C++中,`string`类的`substr`函数用于提取字符串的子串,其形式为`s.substr(pos, n)`,其中参数`pos`表示子串的起始位置,`n`表示要提取的字符数。
默认情况下,`pos`的值为0,`n`的值为字符串`s`的长度减去`pos`的值,即不加参数会默认拷贝整个字符串`s`。
如果`pos`的值超过了字符串`s`的大小,则`substr`函数会抛出一个`out_of_range`异常;如果`pos+n`的值超过了字符串`s`的大小,则`substr`会调整`n`的值,只拷贝到字符串`s`的末尾。
例如,对于字符串"123456789",可以使用以下代码提取子串:
```cpp
string s = "123456789";
string sub1 = s.substr(4); // 从下标为4开始,直到结尾,即:sub1 = "56789"
string sub2 = s.substr(4, 3); // 表示从下标为5开始截取长度为3位:sub2 = "567"
```
在实际应用中,可以根据需要选择合适的参数来提取所需的子串。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。