I've been trying to "copy" one string to another, in reverse. It kindof works, but it prints some weird symbols. I've tried setting char copy[length2] but that makes the program not run at all.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>
#define ARR_SIZE 50
int main()
{
    char string[ARR_SIZE];
    printf("Enter char array!\n");
    fgets(string, ARR_SIZE, stdin);
    string[strlen(string) - 1] = '\0';
    int length = (strlen(string) - 1);
    int length2 = (strlen(string) - 1);
    printf("%s\t%d\n", string, length);
    for (int i = 0; i <= length; i++)
    {
        printf("INDEX = %d   CHAR = %c\n", i, string[i]);
    }
    
    printf("%d", length2);
    char copy[ARR_SIZE];
    
    for (int i = 0; i <= length2; i++)
    {
        copy[i] = string[length];
        length--;
    }
    
    printf("\n%s", copy);
}

 
     
    