【发布时间】:2013-02-04 06:56:10
【问题描述】:
我的原型限制为bool pal(char str[], int length),我需要测试用户输入的字符串是否为回文。我的代码是:
bool pal(char str[], int length)
{
if(*str == str[length - 1])
{
pal(str+1, length-1);
}
else
{
return false
}
return true;
}
但它似乎只测试第一个字符是否与最后一个字符相同。我认为这是因为我的数组(起点)没有增加,但我不知道为什么。
【问题讨论】:
-
请粘贴您的实际代码——这看起来甚至不应该编译(例如,
*pal == pal[length - 1]无疑应该是*str == str[length - 1])。 -
你忘记了你删掉的多余字符。
标签: c++ recursion character-arrays