strcat · strstr | 使用场景与模拟实现
创始人
2024-01-19 14:07:45
0

在这里插入图片描述
啊我摔倒了..有没有人扶我起来学习....


👱个人主页:《CGod的个人主页》\color{Darkorange}{《CGod的个人主页》}《CGod的个人主页》交个朋友叭~
💒个人社区:《编程成神技术交流社区》\color{Darkorange}{《编程成神技术交流社区》}《编程成神技术交流社区》加入我们,一起高效学习,收割好Offer叭~
🌱刷题链接:《LeetCode》\color{Darkorange}{《LeetCode》}《LeetCode》快速成长的渠道哦~


目录

  • 前言
  • 一、strcat
    • 1.1strcat使用场景
    • 1.2 strcat模拟实现
  • 二、strstr
    • 2.1 strstr使用场景
    • 2.2 strstr模拟实现


前言

  • C语言中对字符和字符串的处理很是频繁,但是C语言本身是没有字符串类型的,字符串通常放在常量字符串中或者字符数组中
  • 字符串常量适用于那些对它不做修改的字符串函数

一、strcat

1.1strcat使用场景

char * strcat ( char * destination, const char * source );
  • 源字符串必须以 ‘\0’ 结束
  • 目标空间必须有足够的大,能容纳下源字符串的内容
  • 目标空间必须可修改
  • 字符串自己给自己追加,如何?
    • 不可以,按上述规则自我追加的时候会覆盖掉某些值

1.2 strcat模拟实现

参考代码:

char* my_strcat(char* dest, const char* src) 
{char* ret = dest;assert(dest != NULL);assert(src != NULL);while (*dest){dest++;}while ((*dest++ = *src++)){;}return ret;
}

二、strstr

2.1 strstr使用场景

char * strstr ( const char *str1, const char * str2);
  • str1寻找与str2相等的子串,然后把该子串的起始位置返回
#include 
#include 
int main()
{char str[] = "This is a simple string";char* pch;pch = strstr(str, "simple");puts(pch);return 0;
}

2.2 strstr模拟实现

参考代码:

char* strstr(const char* str1, const char* str2) 
{char* cp = (char*)str1;char* s1, * s2;if (!*str2)return((char*)str1);while (*cp){s1 = cp;s2 = (char*)str2;while (*s1 && *s2 && !(*s1 - *s2))s1++, s2++;if (!*s2)return(cp);cp++;}return(NULL);
}

在这里插入图片描述

相关内容

热门资讯

MySQL高级篇_第19章_数... 在任何数据库环境中,总会有 不确定的意外 情况发生,比如例外的停电、计算...
“剖肝沥胆”的意思 “剖肝沥胆”的意思 成语拼音: [pōu gān lì dǎn] ...
“母老虎”的意思 “母老虎”的意思 成语拼音: [mǔ lǎo hǔ] ...
“哽哽咽咽”的意思 “哽哽咽咽”的意思 成语拼音: [gěng gěng yè yè] ...
“一渊不两蛟”的意思 “一渊不两蛟”的意思 成语拼音: [yī yuān bù liǎng jiāo] ...
LVS负载均衡与keepali... 目录 一、LVS 负载均衡的结构 LVS三种工作模式 LVS调度算法 ipvsadm工具 二、KE...
数据结构与算法——堆的基本存储 目录 一、概念及其介绍 二、适用说明 三、结构图示 四、Java 实例代码 五.堆和栈的区别 一、...
Vue.js语法详解:从入门到... Vue.js是一个流行的JavaScript框架,用于构建用户界面。它的核心特性包括数...
“江淮河汉”的意思 “江淮河汉”的意思 成语拼音: [jiāng huái hé hàn] ...
“英雄气短”的意思 “英雄气短”的意思 成语拼音: [yīng xióng qì duǎn] ...
“神龙见首不见尾”的意思 “神龙见首不见尾”的意思 成语拼音: [shén lóng jiàn shǒu bù j...
“老生常谈”的意思 “老生常谈”的意思 成语拼音: [lǎo shēng cháng tán] ...
Application 初始化... Application 的 onCreate 和 attachBaseContextApplicat...
Unity 热更新技术 | (... 🎬 博客主页:https://xiaoy.blog.csdn.net ...
01分布式电源接入对配电网影响... 说明书 MATLAB代码:分布式电源接入对配电网影响分析 关键词:分布式...
“付诸一炬”的意思 “付诸一炬”的意思 成语拼音: [fù zhū yī jù] ...
四字开头的成语 四字开头的成语四字开头的成语1  四通五达  四通八达  四停八当  四体不勤  四体不勤  四体百...
“过目成诵”的意思 “过目成诵”的意思 成语拼音: [guò mù chéng sòng] ...
“年复一年”的意思 “年复一年”的意思 成语拼音: [nián fù yī nián] ...
2023-第十四届蓝桥杯冲刺计... 💬前言 💡本文以目录形式列举大纲,可根据题目点击跳转 dz...