Ciao,
In maniera più elementare, ogni funzione deve specificare un tipo di ritorno. Se la funzione non deve ritornare nulla, si può specificare void... in ogni modo è bene sempre specificare qualcosa (altrimenti il compilatore forza un default, in genere int). Specificare il tipo di ritorno rafforza il programma ed evita spiacevoli inconvenienti...
Quando scrivi una funzione (qualsiasi, anche la main), quindi, è buona norma utilizzare la sintassi:
<tipo_ritornato> nome_funzione(<eventuali_parametri){
... corpo
}
Ed è bene invece evitare forme del genere:
nome_funzione(){
... corpo
}
Per la main, invece di scrivere
main(){
... corpo ...
}
Dovresti utilizzare la sintassi standard:
int main(int argc, char** argv){
... corpo ...
return 0; //Ritorna un intero, dal momento che non ti interessa, 0 va benissimo
}
Alcuni compilatori (non tutti!) per la main gradiscono anche una:
void main(void){
... corpo ...
}
Oppure una
int main(void){
... corpo ...
}
Che è più semplice da scrivere quando non ci interessano i parametri ed il valore di ritorno.
Non saprei come essere più elementare...
Ciaociao