Visualizza messaggio singolo
Vecchio 10-07-2004, 10.36.59   #143
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Codice:
typedef struct {
	int riga;
	char colonna;
} t_Mossa;

char *mArray[numeroNavi];
...
void PosizionaNavi(){
   int num = 1; //decrementa l'output per il numero di navi da posizionare
   int raw = 0; //indice di riga
   int colo = 1; // indice di colonna
   char ccolo = ' ';
   char craw = ' ';
   char *coor = "";

   ClearScreen();
   printf("Inserire le coordinate per %u navi.\n",numeroNavi);
   printf("\n");
   for(num=1;num<numeroNavi+1;num++){
         printf("Navi da posizionare: %u\n", numeroNavi+1-num);
	printf("Inserisci le coordinate per la nave %u: ",num);
	printf("Ha acquisito la coordinata\n");
	gets(coor);
         printf("ha fatto il gets\n");
	ccolo = *coor;
	printf("Ha assegnato ccolo\n");
	colo = ccolo - 64;
	printf("Ha convertito ccolo in int\n");
	craw = *(coor + 1);
	printf("Ha assegnato craw\n");
	raw = craw - 48;
	printf("Ha convertito craw in int\n");
	printf("\n");

	mArray[num] = coor;
	cArray[colo][raw] = 'x'; //da togliere quando funziona
   }
}
Questa storia che "... la memoria non poteva essere READ" mi sta tormentando, perché non funziona?

Ho messo una printf dopo ogni istruzione in modo da vedere a che punto si blocca.

In output accade questo
Inserisci le coordinate per la nave 1: Ha acquisito la coordinata

in pratica prende un ritorno a capo precedente e lo considera come coordinata, poi si blocca.
Come si può ovviare a questo problema?

Ultima modifica di Alhazred : 10-07-2004 alle ore 11.20.27
Alhazred non è collegato   Rispondi citando