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; // 程序正常结束
}
相关推荐
爱吃柠檬呀25 分钟前
C语言中的内存函数使用与模拟实现
c语言·开发语言
IT、木易1 小时前
大白话React第七章深入学习 React 高级特性与优化阶段
javascript·学习·react.js
昨今2 小时前
学习Flask:[特殊字符] Day 3:数据库集成
数据库·学习·flask
天若有情6732 小时前
【学习方法】学习软件专业课程的思考方式
学习·学习方法
千里码!2 小时前
编程学习-电子书
java·学习·计算机网络
想你依然心痛2 小时前
侯捷 C++ 课程学习笔记:深入理解类与继承
c++·笔记·学习
SRC_BLUE_173 小时前
[Web 安全] 反序列化漏洞 - 学习笔记
笔记·学习·安全·网络安全
大橙子房3 小时前
AI学习第五天-python的基础使用-趣味图形
python·学习
mftang3 小时前
磁场定向控制 (FOC)模型的C语言实现(STM32G4)
c语言·开发语言·stm32