C语言库函数

A

B

C

D

E

F

G

H

I

G

K

L

M

memcpy()

函数原型:void* memcpy(void* dest, void* source, size_t count)

  • 实现1:

void* memcpy(void* dest, void* source, size_t count)

{

       char *ret = (char *)dest;

       char *dest_t = ret;

       char *source_t = (char *)source;

       

       while (count--){

           *dest_t++ = *source_t++;

        }  

return ret;

}


memmove()

函数原型:void *memmove(void *dst,const void *src,int count)

  • 实现1:

void *memmove(void *dst,const void *src,int count)

{

char *ret;

char *dst_t;

char *src_t;

ret = (char *)dst;

if ((unsigned char*)dst <= (unsigned char*)src|| (unsigned char *)dst >= ((unsigned char *)src + count))

{

dst_t = (char *)dst;

src_t = (char *)src;

while (count--)

{

*dst_t++ = *src_t++;

}

}

else

{

dst_t = (char *)dst + count - 1;

src_t = (char *)src + count - 1;

while (count--)

{

*dst_t-- = *src_t--;

}

}

return(ret);

}



N

O

P

Q

R

S

strcat()

函数原型:char* strcat ( char * dst , const char * src )

  1. 实现1:

char* strcat ( char * dst , const char * src )   
{   
    char * cp = dst;   
    while( *cp )   
        cp++;                       /* find end of dst */  
    while(*src!='\0')
    {
    *cp++=*src++;
    }
    *cp='\0';
    return dst;                  /* return dst */  
}   


strcmp()

函数原型:int strcmp(const char* str1, const char* str2)  

  • 实现1:

int strcmp(const char* str1, const char* str2)  
{  
    int ret = 0;  
    while(!(ret=*(unsigned char*)str1-*(unsigned char*)str2) && *str1)  
    {  
        str1++;  
        str2++  
    }  
    if (ret < 0)  
    {  
        return -1;  
    }  
    else if (ret > 0)  
    {  
        return 1;  
    }  
    return 0;  
}


strcpy()

函数原型:char *strcpy(char* dest, const char *src)

头文件:#include <string.h>

  • 实现1:

char *strcpy(char* dest, const char *src)
{
    assert((dest!=NULL)&&(src!=NULL));
    char* cp=dest;
    while(*src!='\0')
    {
        *dest=*src;
        src++;
        dest++;
    }
    *dest='\0';
    return cp;
}



strstr()

函数原型:char *strstr( const char *s1, const char *s2 )

头文件:#include <string.h>

  • 实现1:

char *strstr(const char *s1, const char *s2)
{
 int n;
 if (*s2)
 {
   while (*s1)
   {
     for (n=0; *(s1 + n) == *(s2 + n); n++)
     {
       if (!*(s2 + n + 1))
         return (char *)s1;
     }
     s1++;
   }
    return NULL;
 }
 else
   return (char *)s1;
}


T

U

V

W

X

Y

Z


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值