字符串函数和字符函数详解——strlen,strcpy,strcat,strcmp......

这篇博客详细讲解了C语言中的字符串和字符函数,包括strlen用于计算字符串长度,strcpy和strcat进行字符串复制和连接,strcmp进行字符串比较,以及strncpy, strncat, strncmp等限制长度的字符串操作。此外,还介绍了strstr用于查找子字符串,strtok用于分割字符串,以及字符分类和大小写转换的相关函数。" 52730002,5574937,iOS直播APP:点赞动画实现详解,"['ios', '视频', '直播APP', '动画', '即时通信']
摘要由CSDN通过智能技术生成

strlen

size_t strlen( const char *string );

1 字符串以 \0 作为结束标志,strlen函数返回的是 \0之前出现的字符个数
2 字符串必须以 \0 结束
3 返回值为 size_t ,是无符号类型

strcpy

char *strcpy( char *strDestination, const char *strSource );

1 源字符串必须以 \0结束
2 会将源字符串的 \0拷贝到源字符串
3 目标空间必须足够大且是可变的
书写函数模拟实现

#include<stdio.h>
#include<string.h>
#include<assert.h>
 
char *my_strcpy(char *s1,const char *s2)
{
   
	assert(s1!=NULL);
	assert(s2!=NULL);
	char *ret=s1;
	while(*s2!='\0')
	{
   
		*s1=*s2;
		s1++;
		s2++;
		
	}
	*s1=*s2;//将\0拷贝过去了 
	
	return ret;
}


int main()
{
   
     char a1[]="*****************";
	 char a2[]="helloworld";
	 strcpy(a1,a2);
	 printf("%s",a1); 
	 return 0;	
	
} 

assert函数是为了保障s1和s2不为空指针
最后拷贝的为符号\0
返回为目标空间的起始地址
另一种形式为

char *my_strcpy(char *s1,const char *s2)
{
   
    assert(s1&s1);//任意一个指针均不能为假 
    
    char *ret=s1; 
    while(*s1++=*s2++)  //拷贝字符串,包括\0 
    {
   
    	;
	}
   
     return ret;//返回的是目标空间的起始地址 
}

strcat-字符串追加

char *strcat( char *strDestination, 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不可触碰的殇

前途似海,来日方长

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值