Prüfen, ob ein Wort ein Palindrom in C ist

#include < stdio.h>
#include < stdlib.h>
#include < string.h>

int est_palidrome(char *str)
{
    bool result = false;
    //wenn das Wort nicht mehr als 1 Zeichen enthält
    if(strlen(str) <= 1)
        Ergebnis = wahr;
     
    //andernfalls, wenn das erste Zeichen
    entspricht dem latest
    else if(str[0] == str[strlen(str)-1])
          {
            //le  Erstens  und das letzte Zeichen
            werden überprüft, damit sie eliminiert werden
            char temp[strlen(str)-2];
            //memcpy ermöglicht es Ihnen, ein Teil zu kopieren
            str in temp
            -2: das '\0' + das letzte eliminierte Zeichen
            memcpy( temp, & str[1], strlen(str) -  2 );
            // '\0' gibt die Grenze an
            temp[strlen(str) -  2] = '\0';
            //rekursiver Aufruf
            Ergebnis = est_palidrome(temp);
         }
    Ergebnis zurückgeben;
}

int main()
{
    char str[20];
    printf("Geben Sie eine Zeichenfolge ein.\n");
    scanf("%s",str);

    if(est_palidrome(str))
        printf("Es ist ein Palindrom!\n");
    else
        printf("Es ist kein Palindrom! \n");
    system("pause");
}