串的基本操作数据结构C++
时间: 2023-11-12 13:08:18 浏览: 63
串是由零个或多个字符组成的有限序列,是一种常见的数据类型。在C++中,可以使用字符数组或string类来表示串。串的基本操作包括初始化、赋值、连接、比较、查找、替换等。以下是一些基本操作的实现代码:
1. 初始化
```c++
char str[Max]; //定义一个字符数组
str[0] = 'H';
str[1] = 'e';
str[2] = 'l';
str[3] = 'l';
str[4] = 'o';
str[5] = '\0'; //字符串以'\0'结尾
```
2. 赋值
```c++
char str1[Max] = "Hello";char str2[Max];
strcpy(str2, str1); //将str1复制到str2中
```
3. 连接
```c++
char str1[Max] = "Hello";
char str2[Max] = "World";
strcat(str1, str2); //将str2连接到str1的末尾
```
4. 比较
```c++
char str1[Max] = "Hello";
char str2[Max] = "World";
int result = strcmp(str1, str2); //比较str1和str2的大小
if (result == 0) {
cout << "str1等于str2" << endl;
} else if (result < 0) {
cout << "str1小于str2" << endl;
} else {
cout << "str1大于str2" << endl;
}
```
5. 查找
```c++
char str[Max] = "Hello World";
char *p = strchr(str, 'o'); //查找字符'o'在str中第一次出现的位置
if (p != NULL) {
cout << "字符'o'在str中第一次出现的位置是:" << p - str << endl;
} else {
cout << "字符'o'在str中未找到" << endl;
}
```
6. 替换
```c++
char str[Max] = "Hello World";
char *p = strstr(str, "World"); //查找子串"World"在str中第一次出现的位置
if (p != NULL) {
strncpy(p, "China", 5); //将"World"替换为"China"
}
cout << "替换后的字符串是:" << str << endl;
```