strcat函数的使用需要注意的问题

时间:2022-04-14 06:53:21

曾被这个函数困扰了好久,然后各种假设,验证;但是最后却发现这个函数并没有什么好讲的,原来的过错一切都源于忽略了“*dst去掉\0,然后加上*src,最后返回*dst”这句话的真正含义:给*dst分配的空间应该足够容纳容纳原*dst+*src。

strcat函数源代码

char * __cdecl strcat (char * dst, const char * src)
{
char * cp = dst;

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

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

return( dst ); /* return dst */
}