模拟实现strcpy函数#include <stdio.h>#include <assert.h>char *my_strcpy(char *des,const char *src){ char *ret = des; assert (des!=NULL); assert (src!=NULL); while ((*des++)=(*src++)) { ; } return ret;}int main (){ char arr[10] ={0}; char *p = "abcdef"; char *ret = my_strcpy(arr,p); PRintf ("%s/n",ret); return 0;}strlen函数可以计算出字符串的长度
模拟实现strlen函数int my_strlen(const char *src){ int count = 0; assert(src); while ((*src++)) { count ++; } return count;}int main (){ char *p="abcdef"; int ret = my_strlen(p); printf ("%d/n",ret); return 0;}strcat函数可以把一个字符串追加到另一个字符串中
模拟实现字符串的追加strcatchar *my_strcat(char *des,const char *src){ char *ret = des; assert(des); assert(src); while (*des) { des++; } while ((*des++)=(*src++)) { ; } return ret;}int main (){ char arr[20] = "hello "; char *p = "world!"; char *ret = my_strcat(arr,p); printf ("%s/n",ret); return 0;}strcmp函数可以比较两个字符串的大小
模拟实现字符串的比较函数strcmpint my_strcmp(const char *des,const char *src){ assert (des); assert(src); while ((*src)||(*des)) { if (*des>*src) { return 1; break; } else if (*des<*src) { return -1; break; } else if (*des==*src) { des++; src++; } } return 0;}int main (){ char *p = "cdefdf"; char *q ="cdef"; int ret = my_strcmp(p,q); if (ret==1) { printf ("较大的字符串是:%s/n",p); } else if (ret==-1) { printf ("较大的字符串是:%s/n",q); } else if (ret==0) { printf ("两个字符串相等/n"); } return 0;}
新闻热点
疑难解答