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

溫馨提示×

c語言查找子串的方法是什么

小億
411
2023-11-24 07:03:58
欄目: 編程語言

在C語言中,可以使用以下幾種方法來查找子串:

  1. 使用字符串庫函數:可以使用C標準庫中的字符串函數來查找子串,例如strchr()、strstr()等。其中,strstr()函數可以用來查找一個字符串中是否包含另一個子串,如果包含則返回子串在字符串中的位置指針,如果不包含則返回NULL。

示例代碼:

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

int main() {
    char str[] = "Hello, world!";
    char sub[] = "world";
    
    char *ptr = strstr(str, sub);
    
    if (ptr != NULL) {
        printf("子串在字符串中的位置:%ld\n", ptr - str);
    } else {
        printf("未找到子串\n");
    }
    
    return 0;
}
  1. 使用循環遍歷:可以使用循環遍歷字符串中的每個字符,逐一比較字符是否匹配子串的第一個字符,如果匹配,則再逐一比較后續字符是否相等,直至完全匹配或者不匹配。

示例代碼:

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

int main() {
    char str[] = "Hello, world!";
    char sub[] = "world";
    
    int len_str = strlen(str);
    int len_sub = strlen(sub);
    
    int i, j, k;
    for (i = 0; i <= len_str - len_sub; i++) {
        for (j = i, k = 0; k < len_sub && str[j] == sub[k]; j++, k++);
        if (k == len_sub) {
            printf("子串在字符串中的位置:%d\n", i);
            break;
        }
    }
    
    if (i > len_str - len_sub) {
        printf("未找到子串\n");
    }
    
    return 0;
}

以上是兩種常見的查找子串的方法,可以根據具體情況選擇合適的方法來使用。

0
大英县| 鸡东县| 胶州市| 基隆市| 庆元县| 乐东| 龙川县| 建阳市| 饶阳县| 沐川县| 庆安县| 措美县| 枣庄市| 大竹县| 沈阳市| 湘乡市| 阿图什市| 昌图县| 合山市| 雅安市| 安龙县| 邻水| 通江县| 基隆市| 舟曲县| 开远市| 罗甸县| 长垣县| 嵊州市| 乌苏市| 靖边县| 方城县| 武清区| 永仁县| 彰武县| 贡山| 沅陵县| 柏乡县| 华池县| 东阳市| 洛宁县|