PDA

View Full Version : [C] Dimensione array non conosciuta a compile time


GByTe87
18-02-2011, 11:18
Uhm... mi sono ritrovato davanti a codice del genere.

int foo(int finalLen)
{
char finalString[finalLen + 1];
...
}


Sapevo di non poter fare una cosa del genere... eppure funziona.
Sbaglio io o il fatto che funzioni è un caso? :confused:

clockover
18-02-2011, 11:23
Perchè non si potrebbe fare?

WarDuck
18-02-2011, 11:37
Che compilatore stai usando? Forse lo standard C99 prevede questo caso.

GByTe87
18-02-2011, 12:38
Perchè non si potrebbe fare?

La dimensioni di un array non dovrebbero essere note a compile time?

Che compilatore stai usando? Forse lo standard C99 prevede questo caso.

GCC 4.3.2

GByTe87
18-02-2011, 12:44
Come dice WarDuck, questa possibilità è stata aggiunta nel C99. :D