2025-02-26 学习记录--C/C++-C语言 判断字符串S2是否在字符串S1中

合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。💪🏻

C语言 判断字符串S2是否在字符串S1

c 复制代码
#include <stdio.h>  // 引入标准输入输出库,用于使用 printf 等函数
#include <string.h> // 引入字符串处理库,用于使用 strstr 等函数

int main() {
    const char *S1 = "Hello, world!"; // 定义字符串 S1,内容为 "Hello, world!"
    const char *S2 = "world";         // 定义字符串 S2,内容为 "world"
    char *p;                          // 定义一个字符指针 p,用于存储 strstr 的返回值

    // 使用 strstr 函数在 S1 中查找 S2
    // 如果 S2 是 S1 的子串,p 指向 S2 在 S1 中首次出现的位置
    // 如果 S2 不是 S1 的子串,p 为 NULL
    if ((p = strstr(S1, S2)) == NULL) {
        // 如果 p 为 NULL,说明 S2 不在 S1 中
        printf("'%s' not found in '%s'\n", S2, S1); // 输出未找到的信息
    } else {
        // 如果 p 不为 NULL,说明 S2 是 S1 的子串
        // 计算 S2 在 S1 中的位置(p - S1 表示指针偏移量)
        printf("'%s' found in '%s' at position: %ld\n", S2, S1, p - S1); // 输出找到的位置
    }

    return 0; // 程序正常结束
}
相关推荐
九年义务漏网鲨鱼1 小时前
【大模型学习 | MINIGPT-4原理】
人工智能·深度学习·学习·语言模型·多模态
jz_ddk1 小时前
[学习] C语言数学库函数背后的故事:`double erf(double x)`
c语言·开发语言·学习
无小道2 小时前
c++-引用(包括完美转发,移动构造,万能引用)
c语言·开发语言·汇编·c++
爱莉希雅&&&3 小时前
技术面试题,HR面试题
开发语言·学习·面试
FirstFrost --sy4 小时前
数据结构之二叉树
c语言·数据结构·c++·算法·链表·深度优先·广度优先
Chef_Chen4 小时前
从0开始学习计算机视觉--Day08--卷积神经网络
学习·计算机视觉·cnn
weixin_446260854 小时前
Isaac Lab:让机器人学习更简单的开源框架
学习·机器人
森焱森4 小时前
垂起固定翼无人机介绍
c语言·单片机·算法·架构·无人机
我真不会起名字啊6 小时前
OpenSceneGraph(OSG)开发学习
学习
永日456706 小时前
学习日记-spring-day42-7.7
java·学习·spring