Strcmp()似乎不适用于我的C程序?

时间:2015-08-20 18:06:40

标签: c strcmp

我正在编写一个程序来检查一个给定的单词是否是回文(一个单词拼写相同的向前和向后)。

它几乎完成了,但现在我遇到了strcmp()的问题。即使前向词和反向词是相同的,它也永远不会返回0。

这是检查向前与向后的功能。如果这还不够,请告诉我。

"
编辑:谢谢大家的帮助,但显然问题完全出乎意料。我的一个字符串中有一个换行符但没有另一个换行符(仍然不确定原因)但是我能够删除换行符并且它对我有效。我也做了你们推荐的优化。我很擅长优化:P

1 个答案:

答案 0 :(得分:-1)

为什么还要使用strcmp?

int i = 0;
while(len > 1)
{
 if(msg[i] != msg[len-i-1]) return false;
 i++;
 len = len - 2;
}

return true;

如果您怀疑某项功能无法正常工作,请取消该功能。