Массивы переменной длины в C89?

Я читал, что C89 не поддерживает массивы переменной длины, но следующий эксперимент, кажется, опровергает это:

#include <stdio.h>

int main()
{
   int x;
   printf("Enter a number: ");
   scanf("%d", &x);
   int a[x];
   a[0] = 1;
   // ...
   return 0;
}

Когда я компилирую как таковой (при условии, что имя файла va_test.c ):

gcc va_test.c -std=c89 -o va_test

Работает ...

Что мне не хватает? : -)

9
задан jasonbogd 11 November 2010 в 22:09
поделиться