一、封装 strcpy
函数
#include <stdio.h>
char* mystrcpy(char *dest, const char *src)
{
char *result = dest;
while (*src != '\0') {
*dest = *src;
dest++;
src++;
}
*dest = '\0';
return result;
}
int main(){
char str1[20] = "";
char str2[20] = "hello";
printf("%s/n",mystrcpy(str1,str2));
return 0;
}
二、封装 strcmp
函数
int mystrcmp(const char *s1, const char *s2) {
while (*s1 == *s2) {
if (*s1 == '\0') {
return 0; // 字符串相等
}
s1++;
s2++;
}
return *s1 - *s2;
}
int main(){
char str3[20] = "abcdefghi";
char str4[20] = "abcdefghij";
printf("%d\n",mystrcmp(str3,str4));
return 0;
}
三、封装 strcat
函数
char* mystrcat(char *dest, const char *src) {
char *result = dest;
while (*dest != '\0') {
dest++;
}
while (*src != '\0') {
*dest = *src;
dest++;
src++;
}
*dest = '\0';
return result;
}
int main(){
char str5[20] = "hello";
char str6[20] = "world";
printf("%d\s",mystrcmp(str5,str6));
return 0;
}
四、封装 strlen
函数
int mystrlen(const char *str) {
int length = 0;
while (*str != '\0') {
length++;
str++;
}
return length;
}
int main(){
char str6[20]="hello";
printf("%d\n",mystrlen(str6));
}