PDA

Visualizza la versione completa : [C] error C2143 error C2065


fofo_lax
20-01-2009, 02:01
Salve a tutti!
Mi potreste dare una mano??
quando compilo il codice sotto ottengo questi due errori:
error C2143: syntax error : missing ';' before 'type'
error C2065: 'num2' : undeclared identifier


#include <stdio.h>
int main(void)
{
int num1 = 1;
printf("%d\n", num1);
int num2 = 2;
printf("%d\n", num2);

return (0);
}

A me sembra che i ";" ci siano tutti e anche che "num2" sia dichiarato!

Facendo delle altre prove sembra che ottengo questi errori quando dichiaro una variabile dopo una qualsiasi altra istruzione!

Per esempio anche questo da error C2143: syntax error : missing ';' before 'type'

#include <stdio.h>
int main(void)
{
printf("Ciao");
int a;
return (0);
}

Nessuno errore invece se "int a;" viene prima!

#include <stdio.h>
int main(void)
{
int a;
printf("Ciao");
return (0);
}

Dovrebbe funzionare in entrambi i casi!! o mi sbaglio?
Uso visual studio 2008

oregon
20-01-2009, 02:15
In C e' perfettamente corretto che ti dia quegli errori.

In C++ invece quel tipo di scrittura e' consentita.

Quindi hai impostato la compilazione C e non C++

fofo_lax
20-01-2009, 16:25
Grazie mille per il chiarimento!!
Il problema era proprio questo! Avevo il compilatore impostato per compilare rigorosamente C !

Loading