亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

strstr函數如何實現子串查找

小樊
85
2024-06-18 12:40:59
欄目: 編程語言

在C語言中,可以通過循環遍歷主串中每個字符,并使用strncmp函數來比較子串和主串中的每個可能的子串,如果相等則返回該子串在主串中的位置。具體實現可以參考以下代碼:

#include <stdio.h>
#include <string.h>

char* strstr_custom(const char* haystack, const char* needle) {
    if (*needle == '\0') {
        return haystack; // 如果子串為空,則直接返回主串
    }

    while (*haystack != '\0') {
        if (*haystack == *needle && strncmp(haystack, needle, strlen(needle)) == 0) {
            return (char*) haystack; // 如果找到子串,則返回該子串在主串中的位置
        }
        haystack++;
    }

    return NULL; // 如果找不到子串,則返回NULL
}

int main() {
    const char* haystack = "hello world";
    const char* needle = "world";

    char* result = strstr_custom(haystack, needle);

    if (result != NULL) {
        printf("子串 \"%s\" 在主串 \"%s\" 中的位置為 %ld\n", needle, haystack, result - haystack);
    } else {
        printf("子串 \"%s\" 未在主串 \"%s\" 中找到\n", needle, haystack);
    }

    return 0;
}

以上代碼中定義了一個自定義的strstr函數strstr_custom來實現子串查找功能。在main函數中調用strstr_custom函數來查找子串在主串中的位置,并輸出結果。

0
乐平市| 昭通市| 石楼县| 蒙山县| 东海县| 迁安市| 巧家县| 修水县| 仪陇县| 土默特右旗| 英德市| 庆元县| 祁阳县| 凤翔县| 芮城县| 定南县| 安吉县| 镇江市| 徐汇区| 长治市| 孙吴县| 兴化市| 方正县| 鄂温| 彭州市| 黔江区| 渑池县| 闽侯县| 高雄县| 梁河县| 中牟县| 通道| 进贤县| 安西县| 哈尔滨市| 巍山| 长泰县| 昆明市| 佛教| 平谷区| 义乌市|