_start()
. In C++ chiamare la funzione main() causa un errore in compilazione mentre in C è possibile addirittura chiamarla ricorsivamente:int main()
{
main();
}
è quello che ho fatto , ma il menu sta nel main , quindi se devo riproporre il menù in seguito devo richiamare il main......
Fai una funzione per il menu e togli quel codice dal main.perchè nel main ho una sorta di menu pricipale
#include <stdlib.h>
#include <stdio.h>
#include "gamelib.h"
int main(){
int scegli;
do{
printf("Inserisci l'operazione da effettuare \n");
printf(" 1. Crea mappa.\n 2. Gioca. \n 3. termina gioco.\n");
printf("Attenzione, prima di giocare devi creare la mappa! \n " );
scanf("%d",&scegli);
if (scegli<1||scegli>3) {
printf("Hai inserito un valore non valido\n" );
}
switch(scegli){
case 1:
crea_mappa();
break;
case 2:
gioca();
break;
case 3:
termina_gioco();
break;
}
}while(scegli!=3);
}
void crea_mappa(){
int opzione;
do {
printf("\t Premi '1' per CREARE LA SCACCHIERA \n" );
printf("\t \n" );
printf("\t Premi '2' per STAMPARE LA SCACCHIERA \n" );
printf("\t \n" );
printf("\t Premi '3' per TORNARE INDIETRO \n" );
scanf("%d", &opzione );
switch (opzione) {
case 1:
crea_scacchiera();
break;
case 2:
stampa_scacchiera();
break;
case 3:
termina_creazione();
break;
default:
printf("Opzione non valida..\n" );
break;
}
} while(opzione!=3);
}
void termina_creazione() {
//torna al menu del main...
}