91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c語言怎么查找字符串指定字符串

小億
131
2024-09-26 00:52:00
欄目: 編程語言

在C語言中,查找字符串中的指定子字符串通常可以通過兩種方法實現:使用strstr()函數和使用循環遍歷。

  1. 使用strstr()函數: strstr()函數是C語言標準庫中的一個函數,用于在一個字符串中查找另一個字符串首次出現的位置。其原型如下:
char *strstr(const char *str, const char *sub);

其中,str是要搜索的主字符串,sub是要查找的子字符串。如果找到了子字符串,strstr()函數返回子字符串在主字符串中首次出現的位置的指針;否則返回NULL。

示例代碼:

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

int main() {
    const char *str = "Hello, welcome to the world of C language!";
    const char *sub = "C language";

    char *result = strstr(str, sub);
    if (result != NULL) {
        printf("Found '%s' in the string.\n", sub);
        printf("The position is: %lu\n", (unsigned long)result - (unsigned long)str);
    } else {
        printf("The substring '%s' was not found.\n", sub);
    }

    return 0;
}
  1. 使用循環遍歷: 如果你想從頭開始遍歷字符串以查找子字符串,可以使用for循環和strcmp()函數。下面是一個簡單的示例:
#include <stdio.h>
#include <string.h>

int main() {
    const char *str = "Hello, welcome to the world of C language!";
    const char *sub = "C language";
    size_t len_str = strlen(str);
    size_t len_sub = strlen(sub);
    int found = 0;

    for (size_t i = 0; i <= len_str - len_sub; i++) {
        if (strncmp(str + i, sub, len_sub) == 0) {
            found = 1;
            printf("Found '%s' in the string.\n", sub);
            printf("The position is: %lu\n", (unsigned long)i);
            break;
        }
    }

    if (!found) {
        printf("The substring '%s' was not found.\n", sub);
    }

    return 0;
}

在這個例子中,strncmp()函數用于比較兩個字符串的前len_sub個字符。如果它們相等,那么子字符串就被找到了。

0
彭阳县| 永济市| 阳东县| 疏勒县| 元氏县| 囊谦县| 牙克石市| 巴马| 武功县| 明水县| 罗定市| 景宁| 巨鹿县| 中方县| 井陉县| 黑龙江省| 桐柏县| 资中县| 彭山县| 澳门| 玉屏| 中阳县| 古交市| 喀喇沁旗| 津南区| 锡林郭勒盟| 鄱阳县| 象山县| 五原县| 修文县| 满城县| 丹棱县| 化德县| 仪陇县| 静宁县| 中牟县| 荥经县| 大厂| 平阳县| 洛宁县| 岚皋县|