strncpy()、 strcpy()、 strcmp 、strdup、 strlen函数的实现!

来源:互联网 发布:c语言编译软件 编辑:程序博客网 时间:2024/05/28 06:04

strncpy() strcpy() strcmp strdup() strlen()

Code:
  1. //strncpy() 函数的实现   
  2.   
  3. char * copySubStr(char * strTo,char * strFrom,size_t size)   
  4. {   
  5.     char * strstart = strTo;   
  6.     while(size-- >0)   
  7.     {   
  8.         *strTo++ = *strFrom++;   
  9.     }   
  10.     *strTo = '/0';   
  11.     return (strstart);   
  12. }   
  13.   
  14.   
  15. //strcpy() 函数的实现   
  16. char * strcpy(char * pchTo,char * pchFrom)   
  17. {   
  18.     char * pchStart = pchTo;   
  19.     while ((*pchTo ++ = *pchFrom++) != 0)   
  20.     {}   
  21.     return (pchStart);   
  22. }   
  23.   
  24. //strcmp 函数的实现   
  25.   
  26. int strcmp(const char* strLeft,const char * strRight)   
  27. {   
  28.     for(;*strLeft==*strRight;strLeft++,strRight++)   
  29.     {   
  30.         if(*strLeft == '/0')   
  31.         return 0;   
  32.     }   
  33.     return ((*strLeft<*strRight)? -1,1);   
  34. }   
  35.   
  36. //strdup()函数的实现   
  37.   
  38. char * strdup(char *)   
  39. {   
  40.     char * strNew;   
  41.     assert(str != NULL);   
  42.     strNew = (char *)malloc(strlen(str)+1);   
  43.     strcpy(strNew,str);   
  44.     return strNew;   
  45. }   
  46.   
  47. //strlen函数的实现   
  48.   
  49. int strlen(char s[])   
  50. {   
  51.  int i;   
  52.   
  53.  i =0;   
  54.  while(s[i] != '/0')   
  55.   ++i;   
  56.  return i;   
  57. }