字符串函数详细介绍

本文详细介绍了C语言中的字符串处理函数,包括strlen、strcpy、strcat、strcmp、strncat、strncpy、strncmp、strstr、strtok和strerror等,涵盖了函数的功能、参数、注意事项及常见错误解析。此外,还探讨了如何模拟实现部分字符串函数,如strlen、strcat和strstr,以加深理解和应用。
摘要由CSDN通过智能技术生成

1.认识字符串函数

1.1strelen函数

函数功能💻💻💻:

统计字符串中字符个数

函数参数👇👇👇

size_t strlen( const char *string )

注意事项❗️❗️❗️:

  1. 字符串已 ‘\0’ 作为结束标志,strlen函数返回的是在字符串中 ‘\0’ 前面出现的字符个数(不包含 ‘\0’ )。

  2. char* string 所指向的字符串必须以’\0’结尾否则使用该函数时会出现错误。

  3. strlen返回值是无符号整数!

易错代码:

#include <stdio.h>
int main()
{
   
   const char*str1 = "abcdef";
   const char*str2 = "bbb";
if(strlen(str2)-strlen(str1)>0)
{
   
    printf("str2>str1\n");
}
else
{
   
   printf("srt1>str2\n");
}
   return 0;
}

运行结果👇👇👇
在这里插入图片描述
😄😄结果是不是出乎意料!按常规理解这里str1的长度是6,str2的长度是3,应该打印str1>str2.结果却是相反。这是因为strlen返回的是无符号整数,无符号整数使用时会发生整型提升,结果是一个很大的数,所以if语句里面的结果恒大于0.所以打印str2>str1

1.2 strcpy函数

函数功能💻💻💻:

将源字符串里的内容拷贝到目标字符串

函数参数👇👇👇

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

注意事项❗️❗️❗️:

1.源字符串必须以’\0‘结尾;

2.目标字符空间必须足够大,能拷贝放下源字符串ÿ

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值