TA贡献101条经验 获得超107个赞
我觉得strcat函数的功能应该是这样实现的:
while(*s1) //读到s1的结尾
{
s1++;
}
while(*s1++ = *s2++) //将s2拼接到s1后面
NULL;
照上面的代码来看,如果s1和s2内存空间是重叠的,那么s2和s1的结尾肯定是一样的,则当你把s2的每一个字符加到s1后,s2本身最后也会加上这个字符,于是第二个循环会一直循环下去。 所以规定不能重叠吧。
TA贡献1条经验 获得超0个赞
strcat
举报