1.strlen()函数的实现(求字符串长度的函数) #include <stdio.h> #include <assert.h> int my_strlen(const char *str) { int count=0; assert(str!=NULL); while(*str) { count++; str++; } return count; } int main() { char *string= "abcdef ds123"; printf("%d\n",my_strlen(string)); system("pause"); return 0; } 2.strcmp()函数的实现(比较字符串的函数) #include <stdio.h> #include <assert.h> int my_strcmp(const char *str1, const char *str2) { assert(str1!=NULL); assert(str2!=NULL); while(*str1 && *str2 && (*str1==*str2)) { str1++; str2++; } return *str1-*str2; } int main() { char *str1= "abcdde"; char *str2= "abcdef"; printf("%d\n",my_strcmp(str1,str2)); system("pause"); return 0; } 3.strcpy()函数的实现(将一个字符串复制到另一个数组中,并将其覆盖) #include <stdio.h> #include <assert.h> char *my_strcpy(char *dest,const char *scr) //*scr将*dest里的东西覆盖 { char *ret=dest; assert(dest!=NULL); assert(scr!=NULL); while(*scr) { *dest=*scr; scr++; dest++; } *dest=‘\0‘; return ret; } int main() { char str1[100]="I love the world" ; //注意此处str1必须是个数组,因为如果是个常量字符串,它就不能被改变了 char *str2="China" ; printf( "%s\n",my_strcpy(str1,str2)); system("pause"); return 0; } 4.strcat()函数的实现(字符串连接函数) #include <stdio.h> #include <assert.h> char *my_strcat(char *dest,const char *scr) { char *ret=dest; assert(dest!=NULL); assert(scr!=NULL); while(*dest) { dest++; } while(*dest=*scr) { scr++; dest++; } return ret; } int main() { char str1[100]="I have " ; char *str2="a dream!" ; printf( "%s\n",my_strcat(str1,str2)); system("pause"); return 0; }
时间: 2024-10-13 15:59:36