Ho creato un array di char e ho provato a memorizzarlo in due stringhe , avanti e indietro. ora vorrei confrontare queste stringhe per vedere se sono uguali. in tal caso dovrebbe uscire come output "PALINDROMA". la prima parte fa esattamente quello che volevo, ma al momento del confronto sbaglia. potreste aiutarmi attenendovi , nel caso ci sia ovviamente qualcosa di logico , al livello di codice che ho utilizzato. so che in rete ci sono miliardi di programmi che fanno la stessa cosa e sicuramente migliori, ma vorrei cercare di imparare dalle basi e secondo la mia logica, anche se a volte contorta
codice:
#include "stdafx.h"
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
#include <string>
using std::string;
int main()
{
char parola[100];
string avanti[100];
string indietro[100];
cout << " Inserire parola : ";
cin >> parola;
for (int i = 0; i <= strlen(parola) ; i++) {
avanti[i] = parola[i];
cout << avanti[i];
}
cout << '\n';
for (int i = (strlen(parola) - 1); i >= 0; i--) {
// non posso scrivere strlen perche' riguarda i char
indietro[i] = parola[i];
cout << indietro[i];
}
cout << '\n';
// converti array in stringa ( indietro ) e fai confronto tra stringhe
// converti array avanti e indietro
if (avanti == indietro) {
cout << "PALINDROMA" << endl;
}
else cout << "NON PALINDROMA" << endl;
system("pause");
return 0;
}