Ошибка "Array type is not assignable", не могу понять как убрать

Программа должна перевернуть введенное пользователем предложения. Например, Hello world превратить в World hello. Не могу понять, как задать длину массива, если количество слов укажет сам пользователь. В 9 строке появляется ошибка "Expression didnt evaluate to a constant". В 22 и 25 "Array type 'char [l]" is not assignable ". Код:

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

int main(void)
{
   char sent[140];
   int l = strlen(sent);;                    
   char res[l];   
   int i, j, n, k;

   printf("\n Write your sentence: ");
   gets_s(sent);
   puts("\n Inverted sentence: ");
   while (i < l)
   {
       j = k;
       for (; sent[i] != ' ' || i >= 0; i--)
       {
           k = j - 1; j++;
           for (; j < l || sent[j] != ' '; j++, i++)
               res[i] = sent[j];
       }
       if (i < l)
           res[i] = ' '; i++;
   }
 }

Ответы (0 шт):