In ansi C89 le variabili vanno dichiarate subito dopo l'apertura di un blocco { ... }Originariamente inviato da gokan
cosa cambia?
L'uso delle parentesi graffe all'interno del main a che servono in questo caso?
per cui, se si ha la necessità di dichiarare variabili dopo avere eseguito alcune istruzioni (ad esempio per risparmiare memoria sullo stack)
in C89 si può riscrivere cosìcodice:int main() { int buffer[4096]; /* richiama alcune funzioni */ /* usa la variabile buffer */ /* richiama altre funzioni */ }
ma non così (questo è valido solo per C99 e C++)codice:int main() { /* richiama alcune funzioni */ { int buffer[4096]; /* usa la variabile buffer */ } /* richiama altre funzioni */ }
codice:int main() { /* richiama alcune funzioni */ int buffer[4096]; /* usa la variabile buffer */ /* richiama altre funzioni */ }

Rispondi quotando