字符串查找函數(shù)c語(yǔ)言怎么實(shí)現(xiàn)

小億
85
2024-08-05 17:50:10

在C語(yǔ)言中,可以通過(guò)自己編寫(xiě)一個(gè)字符串查找函數(shù)來(lái)實(shí)現(xiàn)字符串查找的功能。下面是一個(gè)簡(jiǎn)單的示例代碼:

#include <stdio.h>

int findString(char *str, char *substr) {
    int i, j, k;

    for (i = 0; str[i] != '\0'; i++) {
        j = 0;
        k = i;

        while (str[k] == substr[j] && substr[j] != '\0') {
            k++;
            j++;
        }

        if (substr[j] == '\0') {
            return i;
        }
    }

    return -1;
}

int main() {
    char str[] = "Hello, world!";
    char substr[] = "world";

    int index = findString(str, substr);

    if (index != -1) {
        printf("Substring found at index: %d\n", index);
    } else {
        printf("Substring not found\n");
    }

    return 0;
}

在上面的示例代碼中,findString函數(shù)接受兩個(gè)參數(shù):str為要查找的字符串,substr為要查找的子字符串。函數(shù)會(huì)返回子字符串在原字符串中的起始索引,如果找不到則返回-1。在main函數(shù)中,我們可以調(diào)用findString函數(shù)來(lái)查找指定的子字符串在原字符串中的位置。

0