strcpy函数实现(考虑内存折叠)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/lizhentao0707/article/details/82825827
char *my_strcpy(char *dst, const char *src, size_t cnt)
{
	if (nullptr == dst || nullptr == src || cnt == 0)
		return nullptr;
	char *temp1 = dst;
	const char *temp2 = src;
	if (dst <= src || src + cnt <= dst)
	{
		while (cnt--)
			*temp1++ = *temp2++;
	}
	if (dst > src)
	{
		temp1 += cnt;
		temp2 += cnt;
		while (cnt--)
			*temp1-- = *temp2--;
	}
	return dst;
}

 

展开阅读全文

没有更多推荐了,返回首页