C语言简单strcat和strcmp的实现

对于C标准库中的字符串处理函数应该平常用的比较多;简单实现strcat和strcmp

_strcpy:

1 char *_strcpy(char *dest, char *src)
2 {
3     char *buf = dest;
4     while((*dest++ = *src++))
5         ;
6     return buf;
7 }

 

_strcmp:

 1 int _strcmp(char *str1, char *str2)
 2 {
 3     if(str1 == NULL || str2 == NULL)
 4         return -1;
 5     while(*str1 == *str2)
 6     {
 7         if(*str1 == '\0')  // *str1 == 0
 8             return 0;
 9         str1++;
10         str2++;
11     }
12     return *str1 - *str2;
13 }

_strlen:

 1 int _strlen(char *str)
 2 {
 3     int i= 0;
 4     while(*str)
 5     {
 6         i++;
 7         str++;
 8     }
 9     return i;
10 }

_strcat:

 1 char *_strcat(char *dest, char *src)
 2 {
 3     if(sizeof(dest) - _strlen(dest) < _strlen(src))
 4     {
 5         printf("!!alert : not enough space of dest for src !\n");
 6         return dest;
 7     }
 8     char *buf = dest;
 9     while(*dest)
10         dest++;
11     _strcpy(dest, src);
12     return buf;
13 }

 

Source Code : https://github.com/huaixzk/_strs.so

 

转载于:https://www.cnblogs.com/crazymod/p/3765106.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值