strlen、strcpy、strcat函数的自主实现
程序员文章站
2022-07-15 09:13:52
...
strlen
int Strlen(const char* str) {
int size = 0;
while (*str != '\0') {
size++;
str++;
}
return size;
}
strcpy
char* Strcpy(char* str1, const char* str) {
//参数合法性校验
//assert 叫做 "断言" . () 的条件必须要成立, 否则程序就直接崩溃
assert(str1 != NULL && str != NULL);
int i = 0;
while (str[i] != '\0') {
str1[i] = str[i];
i++;
}
str1[i] = '\0';//为新的字符串添加结束的标志
return str1;
}
strcat
char* Strcat(char* str1, const char* str) {//把str中的内容接到str1内容的后面
//参数合法性校验
//assert 叫做 "断言" . () 的条件必须要成立, 否则程序就直接崩溃
assert(str1 != NULL && str != NULL);
int find = 0;
while (str1[find] != '\0') {
find++;
}
int i = 0;
while (str[i] != '\0') {
str1[find + i] = str[i];
i++;
}
str1[find + i] = '\0';
return str1;
}
下一篇: C语言实现顺序表