串基本操作的实现(1)赋值。 (2)判相等。 (3)串连接。 (4)求长度。 (5)求子串。 (6)子串定位
时间: 2023-08-11 12:08:30 浏览: 112
1. 赋值:将一个串赋值给另一个串,就是把一个串中的每个字符逐个复制到另一个串中。例如,对于串 S 和 T,可以使用以下代码实现赋值操作:
```c++
// 假设 S 和 T 已经定义好了
T = S; // 将 S 中的所有字符复制到 T 中
```
2. 判相等:判断两个串是否相等,就是比较它们的每个字符是否都相等。例如,对于串 S 和 T,可以使用以下代码实现判相等操作:
```c++
// 假设 S 和 T 已经定义好了
if (S == T) {
// 两个串相等
} else {
// 两个串不相等
}
```
3. 串连接:将两个串连接起来,就是把第二个串中的所有字符追加到第一个串的末尾。例如,对于串 S 和 T,可以使用以下代码实现串连接操作:
```c++
// 假设 S 和 T 已经定义好了
S += T; // 将 T 中的所有字符追加到 S 的末尾
```
4. 求长度:求一个串的长度,就是统计它包含的字符数。例如,对于串 S,可以使用以下代码实现求长度操作:
```c++
// 假设 S 已经定义好了
int len = S.length(); // 求 S 的长度
```
5. 求子串:从一个串中截取一段子串,就是取出该串中指定位置和长度的一段字符。例如,对于串 S,可以使用以下代码实现求子串操作:
```c++
// 假设 S 已经定义好了
string sub = S.substr(pos, len); // 取出从 pos 开始长度为 len 的子串
```
6. 子串定位:在一个串中查找指定子串出现的位置,就是找到该串中第一次出现该子串的位置。例如,对于串 S 和子串 T,可以使用以下代码实现子串定位操作:
```c++
// 假设 S 和 T 已经定义好了
int pos = S.find(T); // 查找 T 在 S 中的位置
if (pos != string::npos) {
// T 在 S 中出现过,pos 表示第一次出现的位置
} else {
// T 在 S 中没有出现过
}
```
阅读全文