strlen函数实现:
int MyStrlen(char * str){
if(str == NULL)
return -1;
int count = 0;
while(*str++ != '\0'){
count ++;
}
return count;
}
strcpy函数实现:
char * MyStrcpy(char * str, const char * str2){
int i = 0;
while(str2[i] != '\0'){
str[i] = str2[i];
i++;
}
str[i] = '\0';
return str;
}
strcat函数实现:
char * MyStrcat(char * str, const char * str2){
while(*str++ != '\0')
;
str--;
int i = 0;
while( str2[i] != '\0'){
str[i]= str2[i];
i++;
}
str[i] = str2[i];
return str;
}
strcmp函数实现:
int MyStrcmp(const char * str, const char * str2){
int i = 0;
while(str[i] != '\0' || str2[i] != '\0'){
if(str[i] == '\0' || str[i] < str2[i])
return -1;
else if(str2[i] == '\0' || str[i] > str2[i])
return 1;
i++;
}
if(str[i] == '\0' && str2[i] == '\0')
return 0;
}
strchar函数实现:
int MyStrchar(const char * str, char ch){
if(str == NULL)
return -1;
int index = -1;
int i = 0;
while(str[i] != ch && str[i] != '\0')
i++;
index = i;
if(str[i] == '\0')
return -1;
return index;
}
strstr函数实现:
int MyStrstr(const char * str, const char * str2){
int index = -1;
int i = 0;
if(*str2 == '\0' || *str == '\0')
return index;
while(str[i] != '\0'){
int j = 0;
while(str2[j] == str[i+j] && str2[j] != '\0'){
j++;
}
if(str2[j] == '\0')
return index = i;
i++;
}
if(str[i] == '\0')
return index;
}