Czy C11 zezwala na deklaracje zmiennych w dowolnym miejscu funkcji?

Czy standard C11 (uwaga: nie mam na myśli C ++ 11) pozwala zadeklarować zmienne w dowolnym miejscu funkcji?

Poniższy kod nie jest prawidłowy w ANSI C (C89, C90):

int main()
{
  printf("Hello world!");
  int a = 5; /* Error: all variables should be declared at the beginning of the function. */
  return 0;
}

Czy jest to prawidłowy kod źródłowy w C11?

questionAnswers(2)

yourAnswerToTheQuestion