C语言实现编写具体函数实现子串位置的定位函数,例如编写串的判等、求串长、求子串等操作函数实现
时间: 2024-05-14 17:11:52 浏览: 87
1. 串的判等函数实现:
```c
int strcmp(char *str1, char *str2) {
int i = 0;
while (str1[i] == str2[i] && str1[i] != '\0') {
i++;
}
return (str1[i] - str2[i]);
}
```
2. 求串长函数实现:
```c
int strlen(char *str) {
int i = 0;
while (str[i] != '\0') {
i++;
}
return i;
}
```
3. 求子串函数实现:
```c
char *strstr(char *str, char *sub_str) {
int i, j;
for (i = 0; str[i] != '\0'; i++) {
for (j = 0; sub_str[j] != '\0' && str[i+j] == sub_str[j]; j++);
if (sub_str[j] == '\0') {
return &str[i];
}
}
return NULL;
}
```
以上三个函数可以组合使用,实现定位子串在原串中的位置:
```c
int find_sub_str(char *str, char *sub_str) {
char *pos = strstr(str, sub_str);
if (pos == NULL) {
return -1;
} else {
return (pos - str);
}
}
```
阅读全文