Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Problema compilazione Dev-cpp e cicli for
Forum - C/C++ - Problema compilazione Dev-cpp e cicli for

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
Alex (Ex-Member)
Expert


Messaggi: 441
Iscritto: 15/08/2005

Segnala al moderatore
Postato alle 13:00
Mercoledì, 25/08/2010
quando compilo un programma che contiene un ciclo for che dichiara la sua variabile contatore:
Codice sorgente - presumibilmente Plain Text

  1. for(int i=0;;)



dev-cpp mi da questo errore:
67 'for' loop initial declaration used outside C99 mode
questo mi capuita solo se il file è salvato come *.c mentre se è un file *.cpp non mi da questo errore...
la cosa che non capisco è che lo standard c99 supporta la dichiarazione di una variabile all'interno di un for ma come mai mi da errore?

ho provato a cercare su google ma ho trovato risposte molto contrastanti=)

PM Quote
Avatar
Poggi Marco (Member)
Guru


Messaggi: 969
Iscritto: 05/01/2010

Segnala al moderatore
Postato alle 14:09
Mercoledì, 25/08/2010
Segui il mio consiglio: cambia ide
Vedi ad esempio visual studio!

Ti segnala errore, o semplicemente warring?

PM Quote
Avatar
qualcuno (Ex-Member)
Rookie


Messaggi: 37
Iscritto: 30/06/2010

Segnala al moderatore
Postato alle 15:37
Mercoledì, 25/08/2010
@Alex: se compili per C non puoi dichiarare la variabile i dentro al for, ma devi dichiararla fuori.
Esempio:
int i;
for(i=0;i<10;i++)
{
}

PM Quote
Avatar
Alex (Ex-Member)
Expert


Messaggi: 441
Iscritto: 15/08/2005

Segnala al moderatore
Postato alle 19:07
Mercoledì, 25/08/2010
Testo quotato

Postato originariamente da qualcuno:

@Alex: se compili per C non puoi dichiarare la variabile i dentro al for, ma devi dichiararla fuori.
Esempio:
int i;
for(i=0;i<10;i++)
{
}


e no! :nono: nel c99 si può benissimo dichiarare una variabile internamente al for....


@poggi: mi da errore e non mi compila niente:d:d

PM Quote
Avatar
jack92 (Member)
Pro


Messaggi: 100
Iscritto: 06/08/2010

Segnala al moderatore
Postato alle 19:29
Mercoledì, 25/08/2010
@Alex: Una volta è successo anche a me ed ho risolto come ha detto "qualcuno" , dichiarando la variabile prima del ciclo :D ... prova ;)

PM Quote
Avatar
manvb.net (Member)
Guru


Messaggi: 663
Iscritto: 28/01/2008

Segnala al moderatore
Postato alle 21:48
Mercoledì, 25/08/2010
Testo quotato

67 'for' loop initial declaration used outside C99 mode "



Presumo tu debba impostare il compilatore per usare la modalità C99!

PM Quote
Avatar
Alex (Ex-Member)
Expert


Messaggi: 441
Iscritto: 15/08/2005

Segnala al moderatore
Postato alle 23:20
Mercoledì, 25/08/2010
Testo quotato

Postato originariamente da jack92:

@Alex: Una volta è successo anche a me ed ho risolto come ha detto "qualcuno" , dichiarando la variabile prima del ciclo :D ... prova ;)



lo so che si risolve dichiarandola esternamente, però io voglio dichiararla internamente!!

@manv.net  e come faccio? gli devo passare qualche parametro particolare?

PM Quote
Avatar
manvb.net (Member)
Guru


Messaggi: 663
Iscritto: 28/01/2008

Segnala al moderatore
Postato alle 1:06
Giovedì, 26/08/2010
Terzo risultato da google:

"It's just a warning, although an annoying one. You can get rid of it by compiling in C99 mode. In the project options, go to 'parameters', then add '-std=c99' to the 'compiler' textbox. "

PM Quote
Avatar
Alex (Ex-Member)
Expert


Messaggi: 441
Iscritto: 15/08/2005

Segnala al moderatore
Postato alle 11:04
Giovedì, 26/08/2010
Testo quotato

Postato originariamente da manvb.net:

Terzo risultato da google:

"It's just a warning, although an annoying one. You can get rid of it by compiling in C99 mode. In the project options, go to 'parameters', then add '-std=c99' to the 'compiler' textbox. "



avevo già trovato la pagina e provato...=) ma niente=)

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo