千家信息网

字符串类函数的实现是怎样的

发表于:2025-11-17 作者:千家信息网编辑
千家信息网最后更新 2025年11月17日,本篇文章给大家分享的是有关字符串类函数的实现是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。char *strcpy(char *
千家信息网最后更新 2025年11月17日字符串类函数的实现是怎样的

本篇文章给大家分享的是有关字符串类函数的实现是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

char *strcpy(char *strDest ,const char * strSrc )

{

if(strDest == NULL || strSrc == NULL)

return 0;

char *address = strSrc;

while((*strDest++ = *strSrc++) != '\0')

NULL;

return addressl;

}

//字符串比较函数,相等返回0,s1大返回正整数,s2大返回负整数
int mystrcmp(const char *s1,const char *s2)
{
while(*s1!='/0'&&*s2!='/0'&&(*s1==*s2)) s1++,s2++;
return (*s1)-(*s2);
}

//字符串长度函数,长度不包括结尾的'/0'
int mystrlen(const char *s)
{
int res = 0;
while(*s++!='/0')
res++;
return res;
}

//字符串连接函数
char *mystrcat(char *source,const char *dest)
{

if(source ==NULL
|| dest == NULL)

return 0;
char *s = source;
while(*s!='/0')s++;
while(*dest!='/0')*s++ = *dest++;
*s='/0';
return source;
}

//字符串转换小写字母函数
char *mystrlwr(char *source)
{
char *s = source;
do
{
if(*s>='A'&&*s<='Z')
*s+=32;
} while (*s++!='/0');
return source;
}
//字符串转换大写字母函数
char *mystrupr(char *source)
{
char *s = source;
do
{
if(*s>='a'&&*s<='z')
*s-=32;
} while (*s++!='/0');
return source;
}

/字符串倒转函数
char *mystrrev(char *source)
{
char *s1 = source,*s2 = source,temp;
while(*s2!='/0')s2++;
if(s1!=s2)s2--;//找中值,交换分界点
while(s1return source;
}

//字符串查找指定字符串的第一次出现,没有出现返回NULL,出现则返回出现的位置
static const char* _strstr(const
char* s1, const char* s2)
{
assert(s2 && s1);
const char* p=s1, *r=s2;
while(*p!="\0")
{
while(*p++==*r++);
if(*r=="\0")
return p;
else
{
r=s2;
p=++s1;
}
}
return NULL;
}

  1. //strSrc指向的字符串循环右移n个字符后保存到strDest中并返回

  2. char * circulate_right_move(char *strDest,const char *strSrc,const int n)

  3. {

  4. assert( (strDest != NULL) && (strSrc != NULL));


  5. char * address = strDest;

  6. int len = strlen(strSrc);

  7. int offset = n % len;


  8. strSrc += (len - offset);


  9. for(;(*strDest = *strSrc) != '\0';strDest++,strSrc++);


  10. strSrc -= len;


  11. for(int i = 0; i < len - offset; i++)

  12. {

  13. *strDest = *strSrc;

  14. strDest++;

  15. strSrc++;

  16. }


  17. *strDest = '\0';


  18. return address;

  19. }

感觉可以用CMP算法优化。

以上就是字符串类函数的实现是怎样的,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

字符 字符串 函数 字母 整数 更多 知识 篇文章 长度 实用 中值 位置 分界点 大写 大写字母 小写 就是 工作会 感觉 指向 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 武汉市软件开发薪资 云南财经大学网络安全 最好的软件开发网络培训 腾讯云服务器几个人玩的传奇 云下载服务器 群晖备份100GB数据库 软件开发苹果笔记本8g够吗 2003服务器显卡驱动下载官网 雅安租房软件开发 计算机网络安全与管理规范 软件开发的实体是什么意思 杨浦区信息化软件开发活动方案 数据库查询所开课程 网络总是断连服务器无响应 远江盛邦网络安全科技有限 网络安全审查坚持什么相结合 北京正规软件开发大概要多少钱 杭州恩牛网络技术有限公 街道网络安全宣传情况总结 江西戴尔服务器维修调试多少钱 数据库斯群 怎样录入erp数据库 管家婆公司服务器 怀柔区网络营销网络技术市场报价 数据库保存一段话 ftp服务器不安全连不上 海南可视化人口系统软件开发 如何查询账套对应的数据库 暴走漫画互联网科技公司 GT7 无法与服务器
0