Моя цель - ввод через командную строку. Мой код берет ввод, делает копию и переворачивает ее в моей функции реверса. Затем возвращает перевернутый палиндром как rev.
Я попытался вызвать свою обратную функцию внутри моих функций strcmp (x, y == 0), и это вызывало у меня проблемы, я перешел к попытке инициализациивторой массив символов, а затем скопируйте на него реверс (палиндром) и затем сравните.
Я не уверен, куда идти дальше. Любая помощь будет оценена.
#include <iostream>
#include <cstring>
using namespace std;
string reverse(string palindrome) {
string rev;
for (int i = 0; i < palindrome.length(); i++)
rev += palindrome[palindrome.length() - 1 - i];
return rev;
}//string reverse closing
int main(int argc, char *argv[]) {
char palindrome[1000] = ""; //empty string
for (int i = 1; i < argc; i++) {
strcat_s(palindrome, 1000, argv[i]);
}
char rev[1000] = "";
strcpy(rev, reverse(palindrome));
if (strcmp(palindrome, rev == 0)){
cout << "The input was a valid palindrome";
}
else if (strcmp(palindrome, rev != 0)) {
cout << "This input was not a valid palindrome";
}
}// Main closing bracket