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;
}