现在的位置: 首页 > 综合 > 正文

C字符串处理函数的实现

2012年01月18日 ⁄ 综合 ⁄ 共 1309字 ⁄ 字号 评论关闭

1. strlen(),计算字符串长度   

int strlen(const char string)   

{  

    int i=0;   

    while(string[i]) i++;   

    return i;   

}   

2. strcpy(), 字符串拷贝.   

 

char *strcpy(char *destination, const char *source)   

{   

    while(*destinaton++=*source++);   

    return (destination-1);   

}   

3. strcat(), 字符串的连接.   

 

char *strcat(char *target,const char *source)   

{   

    char *original=target;   

    while(*target) target++; // Find the end of the string   

    while(*target++=*source++);   

    return(original);   

4. streql(), 判断两个字符串是否相等.   

 

int streql(char *str1,char *str2)   

{   

    while((*str1==*str2)&&(*str1))   

    {   

        str1++;   

        str2++;   

    }   

    return((*str1==NULL)&&(*str2==NULL));   

}   

5. strchr(), 在字符串中查找某个字符.   

 

char *strchr(const char *string,int letter)   

{   

    while((*string!=letter)&(*string))   

        string++;   

    return (string);   

}   

6. chrcnt(), 计算某个字符在字符串中出现的次数.   

int chrcnt(const char *string,int letter)   

{   

    int count=0;   

    while(*string)   

        if(*string==letter)count++;   

    return count;   

}   

7. strcmp(), 判断两个字符串是否相等.   

int strcmp(const char *str1,const char *str2)   

{   

    while((*str1==*str2)&&(*str1))   

    {   

        str1++;   

        str2++;   

    }   

    if((*str1==*str2)&&(!*str1)) //Same strings   

        return o;   

    else if((*str1)&&(!*str2)) //Same but str1 longer   

        return -1;   

    else if((*str2)&&(!*str1)) //Same but str2 longer   

    else   

    return((*str1>*str2)?-1:1);   

}

抱歉!评论已关闭.