String Functions

2024 年 8 月 12 日 星期一(已编辑)
/ , ,
30
1
摘要
The strcmp() function compares two strings and returns an integer value based on their comparison. The strcpy() function copies the contents of one string to another, while the strcat() function appends the contents of one string to another. The strlen() function returns the length of a string, excluding the null terminator.
这篇文章上次修改于 2024 年 8 月 12 日 星期一,可能部分内容已经不适用,如有疑问可询问作者。

String Functions

1.strcmp()

函数原型

int strcmp(const char *s1,const char * s2);

作用: 比较两个字符串的大小。根据他们的返回值可以判断两个字符串的大小关系。

  • 返回0,表示两个字符串相等。
  • 大于0,表示s1大于s2.
  • 小于0,表示s1小于s2.

代码实现

int my_strcmp(const char *str1,const char *str2){
    while(*str1 && (*str1 == *str2)){
        str1++;
        str2++;
    }
    return *str1 - *str2;
}

2.strcpy()

函数原型

char *strcpy(char *dest,const char * src);

作用:src拷贝到dest中去,要求dest的长度大于src的长度。

使用strcpy会覆盖dest中原有的内容。

代码实现

char *my_strcpy(char *dest, const char *src){
    char *p = dest;
    while(*src!='\0'){
        *dest++ = *src++;
    }
    *dest = '\0';
    return p;
}

3.strcat()

函数原型

char * strcat(char *dest,const char*src );

作用:src串的内容追加到dest中去,所以这里得确保dest的长度大于src.

代码实现

char *my_strcat(char *dest,const char *src){
    char *p = dest;
    // 找到目标串的结束位置
    while(*dest != '\0'){
        dest++;
    }
    // 开始连接,将src中的数据复制到dest结尾处
    while(*src!='\0'){
        *dest++ = *src++;
    }
    *dest = '\0';
    return p;
}

4.strlen()

函数原型

int strlen(const char *s);

作用:返回字符串的长度,不包括\0,统计到\0截止。

代码实现

int my_strlen(const char*str){
    int count = 0;
    while(*str++){
        count++;
    }
    return count;
}

使用社交账号登录

  • Loading...
  • Loading...
  • Loading...
  • Loading...
  • Loading...