6 - strcat

6 - strcat

/* **
*char *strcat(dst, src) - concatenate (append) one string to another
*
*Purpose:
*       Concatenates src onto the end of dest.  Assumes enough
*       space in dest.
*
*Entry:
*       char *dst - string to which "src" is to be appended
*       const char *src - string to be appended to the end of "dst"
*
*Exit:
*       The address of "dst"
*
*Exceptions:
*
******************************************************************************
*/

char   *  __cdecl strcat (
        
char   *  dst,
        
const   char   *  src
        )
{
        
char   *  cp  =  dst; // 得到首地址, 然后遍历到最后, 再copy

        
while * cp )
                cp
++ ;                    /*  find end of dst  */

        
while * cp ++   =   * src ++  ) ;        /*  Copy src to end of dst  */

        
return ( dst );                   /*  return dst  */

}

int  _tmain( int  argc, _TCHAR *  argv[])

  
char  s1[]  =   " abc " ;
  
char  s2[]  =   " def " ;
  
char *  p  =  my_strcat(s1, s2);

  
return   0 ;
}

你可能感兴趣的:(6 - strcat)