常用字符串函数

字节拷贝函数:
最近在复习C语言时 发现写C语言程序时常有语法上的错误 所以找了这篇学习一下
void * memcpy1( void *dest, const void *src, size_t n)
{
         assert (dest!=NULL&&src!=NULL);    //有效性检测
         if (dest == src)
                 return dest;
         else if (dest < src)
         {
                 const char *c_src = static_cast < const char *>(src);
                 char *c_dest = static_cast < char *>(dest);
                 while (n--) *c_dest++ = *c_src++;
         }
         else
         {
                 const char *c_src = static_cast < const char *>(src) + n - 1;
                 char *c_dest = static_cast < char *>(dest) + n - 1;
                 while (n--) *c_dest-- = *c_src--;
         }
         return dest;
}
字符串比较函数:
char * strcpy ( char *des, const char *src) 
     assert (des != NULL && src != NULL); 
     char *pStr = des; 
     while ( (*des++ = *src++) != '\0'
         NULL; 
     return pStr; 
字符串比较函数:
int  strcmp ( const char *des,  const char *src) 
     assert (des != NULL && src != NULL); 
     for (;*des && *src && *des == *src; des++, src++) 
         NULL; 
     return *des - *src; 
字符串长度函数:
int strlen ( const char *pStr) 
     assert (pStr != NULL); 
     int len = 0; 
     while (*pStr++ != '\0'
         len++; 
   
     return len; 
字符串连接函数:
char * strcat ( char *des, const char *src) 
     assert (*des != NULL && *src != NULL); 
     char *pStr = des; 
     while (*des != '\0'
         des++; 
   
     while ((*des++ = *src++) != '\0'
         NULL; 
     return pStr; 
}
字符串查找函数:
char *myStrstr( const char *des, const char *src) 
     assert (des != NULL && src != NULL); 
   
     char *d = des; 
     char *s = src; 
   
     for (; d != '\0' ; des++) 
    
         for (d = des, s = src; (s != '\0' ) && (*d == *s); d++, s++) 
             NULL; 
       
     if (*s == '\0'
         return des; 
    
       
     return NULL; 
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值