Non sapevo di questa cosa.

codice:
main(){

	int a=2;
	printf("ciao %d",a);

	// contiamo le vocali
	int c, nvocals, nnewline, ntab, total;
	c=nvocals=nnewline=ntab=total=0;
}
Com'è che se prima delle dichiarazioni delle variabili inserisco il codice
int a=2;
printf("ciao %d",a);

mi dà gli errori nelle dichiarazioni e negli assegnamenti?

E' così in tutti i compilatori (io uso Visual C++ 6.0) ?