C++string截取某位
时间: 2023-12-07 11:37:40 浏览: 217
以下是C++中string截取某位的方法:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
string s = "ABCD";
cout << s.substr(2) << endl; //从字符串下标为2的地方开始截取,截取到末尾,输出CD
cout << s.substr(0, 2) << endl; //从字符串下标为0的地方开始截取,截取长度为2,输出AB
cout << s.substr(1, 2) << endl; //输出BC
return 0;
}
```
其中,`substr()`函数用于截取字符串的一部分,第一个参数表示截取的起始位置,第二个参数表示截取的长度。如果只有一个参数,则表示从该位置截取到字符串末尾。
相关问题
c++string截取
以下是C++中截取字符串的两种方法:
1. 使用substr函数截取字符串[^1]:
```cpp
#include <string>
#include <iostream>
using namespace std;
int main() {
string strInfo = "Hello Word!";
string subStr = strInfo.substr(2); // 从下标为2开始截取到字符串结尾
cout << "subStr=" << subStr.c_str() << endl; // 输出:subStr=llo Word!
return 0;
}
```
2. 使用下标截取字符串:
```cpp
#include <string>
#include <iostream>
using namespace std;
int main() {
string strInfo = "Hello Word!";
string subStr = strInfo.substr(2, strInfo.length() - 2); // 从下标为2开始截取,截取长度为字符串长度减去2
cout << "subStr=" << subStr.c_str() << endl; // 输出:subStr=llo Word!
return 0;
}
```
c++string截取字符串
可以使用 `substr` 函数来截取字符串。它的语法如下:
```cpp
string substr (size_t pos, size_t len) const;
```
其中,`pos` 表示要截取的子字符串的起始位置,`len` 表示要截取的子字符串的长度。例如,要截取字符串 `str` 中从第 3 个字符开始的长度为 5 的子字符串,可以使用以下代码:
```cpp
string str = "hello world";
string sub_str = str.substr(2, 5); // 从第 3 个字符开始截取长度为 5 的子字符串
cout << sub_str << endl; // 输出 "llo w"
```
需要注意的是,`pos` 参数的有效取值范围是从 0 到字符串长度减 1,`len` 参数的有效取值范围是从 0 到字符串长度减 `pos`。如果 `pos` 或 `len` 超出了有效取值范围,`substr` 函数会抛出 `out_of_range` 异常。
阅读全文