题目要求实现函数 void reverse_copy(char* dst, const char* src); 要求:不能在函数中定义任何变量
void reverse_copy(char* dst, const char* src)
{
(*dst)++;
if(*src == '\0')
{
*(dst + (*dst) - 1) = *dst;
*dst = 0;
return;
}
reverse_copy(dst, ++src);
(*dst)++;
if(*(dst + (*dst)) == (*dst + 1))
{
*(dst + (*dst)) = *(--src);
if(*(src + *(dst)) == '\0')
{
while(*src != '\0')
{
*(dst) = *(dst+1);
dst++;
src++;
}
*dst = '\0';
}
}
else
{
*(dst + (*dst)) = *(--src);
}
}
在dst初始化为0时,可以正常,不为0时,暂时没有解决,如果您有思路,请补充,谢谢