28/07/11 10:15
Alex
Postato originariamente da arack95:
Postato originariamente da anthony015:
puoi benissimo dichiarare un array come hai fatto tu, ma non è di dimensione variabile, ma della dimensione di i al momento della dichiarazione, se in futuro cambi i, l'array resta sempre grande uguale...
Ma cazzarola dici? Se fà come ha fatto lui il compilatore dà errore chiedendo un int const.
non da errore se il compilatore è aderente allo standard c99 che permette che l'inizializzatore dell'array sia non costante...
EDIT: scusate non avevo visto la risposta in seconda pagina=)
Ultima modifica effettuata da Alex 28/07/11 10:16
aaa
28/07/11 14:04
drewnik99
Che compilatore mi consigliate di usare per utilizzare a pieno le funzionalità del C99?
aaa
01/08/11 6:40
Questa caratteristica del linguaggio (come altre dello standard C99) si chiama
VLA - Variable Length Arrays
e viene supportata praticamente da tutti i compilatori *tranne* dal Visual C di Microsoft.
La Microsoft ha più volte dichiarato nel passato di non volere supportare lo standard C99 ma penso che, prima o poi, lo farà.
Il discorso è complesso, perché molte caratteristiche del C99 *non* sono state implementate nello standard del C++ e questo crea un bel po' di confusione.
Il fatto che sia una caratteristica molto usata dipende dal fatto che tanti di quelli che iniziano usano il DevC++ che utilizza la versione Windows di gcc (il mingw), il quale supporta il C99.
Chi ha sempre usato il Visual C si trova "spaesato" (come probabilmente arack...)