-5
這是檢查字符串是否是迴文的代碼。即使字符串是相同的,C++ strcmp也會返回0。
#include<iostream>
using namespace std;
int main()
{
char a[20]="",b[20]="";
int len,c;
cout<<"Enter the string";
cin>>a;
len=strlen(a);
cout<<len<<endl;
for(int i=len-1,j=0;i>=0,j<=len;i--,j++)
{
b[i]=a[j];
}
cout<<a<<endl;
cout<<b<<endl;
cout<<strlen(b);
c=strcmp(a,b);
cout<<c<<endl;
if(a==b)
{
cout<<"palindrome";
}
}
在上面的代碼中,如果輸入是sas,輸出應該是迴文。但它沒有工作說明什麼是錯誤。
請看看在STRCMP的文檔。成功時返回零。 – Happington
[stcrcmp](http://linux.die.net/man/3/strcmp) – jsantander
'如果(a == b)'不符合您的想法,'i> = 0,j <= len'都不是。 – Jarod42