Telefonino.net network
 
| HOMEPAGE | INDICE FORUM | REGOLAMENTO | ::. NEI PREFERITI .:: | RSS Forum | RSS News | NEWS web | NEWS software |
| PUBBLICITA' | | ARTICOLI | WIN XP | VISTA | WIN 7 | REGISTRI | SOFTWARE | MANUALI | RECENSIONI | LINUX | HUMOR | HARDWARE | DOWNLOAD | | CERCA nel FORUM » |

Torna indietro   WinTricks Forum > Software > Programmazione

Notices

Rispondi
 
Strumenti discussione
Vecchio 04-08-2004, 12.13.37   #361
P8257 WebMaster
Gold Member
 
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
P8257 WebMaster promette bene
.. Mi riferisco ai blocchi while attorno ad ogni "getch()"

Bye
P8257 WebMaster non è collegato   Rispondi citando
Vecchio 04-08-2004, 12.17.38   #362
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Beh, time1 lo prendo dalla memoria condivisa con time1 = p->timeStmp
quindi dovrebbe essere tutto ok, giusto?
Alhazred non è collegato   Rispondi citando
Vecchio 04-08-2004, 12.18.16   #363
P8257 WebMaster
Gold Member
 
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
P8257 WebMaster promette bene
Esatto.

Bye
P8257 WebMaster non è collegato   Rispondi citando
Vecchio 04-08-2004, 16.27.55   #364
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Quota:
Originariamente inviato da P8257 WebMaster
.. Mi riferisco ai blocchi while attorno ad ogni "getch()"

Bye
In effetti penso che basti il controllo per il timestamp solo in corrispondenza del primo getch(), ovvero quello per la colonna, se si arriva agli altri vuol dire che l'input è stato messo dall'utente e quindi è corretto.
Alhazred non è collegato   Rispondi citando
Vecchio 04-08-2004, 16.40.53   #365
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Ah, web, dato che ci siamo, sai mica se e come posso mettere un'icona che piace a me al .exe che mi viene generato? Al momento avevo provato cliccando col tasto destro sull'eseguibile, ma in proprietà non c'è "cambia icona". Il fatto è che il file viene creato senza icona e gli viene assegnata quella standard da windows, quindi non c'è un'icona da cambiare, dovrei proprio mettercela.
Alhazred non è collegato   Rispondi citando
Vecchio 04-08-2004, 17.00.50   #366
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Anche scritto così non mi piace molto
Codice:
time(&tempo2);
while(tempo2 < tempo1 + 2)
{
	buffer = getch();
	while((c_col < 65) || (c_col > 74)) 
		c_col = getch();
	time(&tempo2);
}
Bisogna digitare 2 volte la coordinata per la colonna per fargliela accettare, la prima volta viene presa da buffer = getch() e persa.
Com'è il codice corretto per fare questo controllo?

Mettendo c_col al posto di buffer mi sembra che funzioni...
Alhazred non è collegato   Rispondi citando
Vecchio 04-08-2004, 17.34.01   #367
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Altro problema, non va il controllo dei duplicati in Colpo().
Esempio.
1° colpo - C1
2° colpo - E4
3° colpo - C1 viene accettato

Altro esempio
1° colpo - D3
2° colpo - F3
3° colpo - F3 viene riconosciuto come già inserito
3° colpo bis - F3 viene riconosciuto come già inserito
3° colpo ter - D3 viene accettato

In pratica sembra non controlli il primo elemento dell'array che contiene i colpi sparati,
ma il ciclo for parte da 0...
Alhazred non è collegato   Rispondi citando
Vecchio 04-08-2004, 17.52.05   #368
P8257 WebMaster
Gold Member
 
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
P8257 WebMaster promette bene
Fare il debug di "colpo()" all'interno del sorgente diventa un'operazione piuttosto ostica dato che dovresti istanziare due volte il debugger per le due istanze .. ti suggerisco di debuggarla trasferendola in un sorgente a parte creato ad hoc, ovviamente, dato che il pezzo di codice che devi debuggare non ha bisogno né della memoria condivisa e né delle altre strutture dati, sostituiscile con semplici variabili locali...

Bye
P8257 WebMaster non è collegato   Rispondi citando
Vecchio 04-08-2004, 18.15.41   #369
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Sto provando, ma non sono molto pratico col debugger, arrivato ad una istruzione printf mi appare una finestra che mi chiede dove si trova il file printf.c
Alhazred non è collegato   Rispondi citando
Vecchio 04-08-2004, 18.29.18   #370
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Dato che al momento non riesco a fare il debug a causa della finestra sopra citata, che se non la accontento mi fa vedere il programma in assembly e non ci capisco una mazza, provo ad azzardare un'ipotesi, può essere colpa del break? In realtà non ci credo molto, però ho stampato il codice di Colpo() e leggendolo e facendo a mente i conti di ciò che dovrebbe accadere mi sembra corretto...
Alhazred non è collegato   Rispondi citando
Vecchio 04-08-2004, 18.58.30   #371
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Ho trovato il problema , la variabile int colpo doveva essere globale, altrimenti viene riazzerata ogni volta che viene chiamata Colpo(), nell'array dei colpi viene occupata solo la posizione 0 e il controllo avviene solo sull'ultima coordinata inserita, ora il controllo è giusto (Y)
Alhazred non è collegato   Rispondi citando
Vecchio 04-08-2004, 19.03.20   #372
LoryOne
Gold Member
WT Expert
 
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.505
LoryOne è un gioiello raroLoryOne è un gioiello raroLoryOne è un gioiello raro
Per tagliare la testa al toro:
Per quanto riguarda lo svuotamento del buffer della tastiera fai così:

HANDLE hInput;
hInput = GetStdHandle(STD_INPUT_HANDLE);

e prima di effettuare il getch(), svuota il buffer con:
FlushConsoleInputBuffer(hInput);

Per quanto riguarda il controllo dei duplicati io ti consiglio di riscrivere la procedura, facendo particolare attenzione che un duplicato è tale solo se sono uguali riga e colonna.
Questo implica che devi controllare la riga (o la olonna) solo se la colonna (o la riga) coincide.
LoryOne non è collegato   Rispondi citando
Vecchio 04-08-2004, 19.03.58   #373
LoryOne
Gold Member
WT Expert
 
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.505
LoryOne è un gioiello raroLoryOne è un gioiello raroLoryOne è un gioiello raro
Ops, hai già risolto.
LoryOne non è collegato   Rispondi citando
Vecchio 04-08-2004, 19.11.03   #374
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Si, ma la tua informazione su FlushConsoleInputBuffer(hInput); mi ha risolto un effetto collaterale apparso solo ora che i controlli sono ok.
In pratica dopo che era stato riconosciuta una coordinata già valida la successiva chiedeva solamente la riga, la colonna risultava vuota.
Alhazred non è collegato   Rispondi citando
Vecchio 04-08-2004, 19.16.21   #375
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Quota:
Originariamente inviato da LoryOne

...
Per quanto riguarda il controllo dei duplicati io ti consiglio di riscrivere la procedura, facendo particolare attenzione che un duplicato è tale solo se sono uguali riga e colonna.
Questo implica che devi controllare la riga (o la olonna) solo se la colonna (o la riga) coincide.
Intendi così?
La modifica è in neretto.
Codice:
Count = 0;
for(Count = 0; Count < colpo + 1; Count++)
{
	existingCol = FALSE;
	existingRaw = FALSE;

	if(pArray[Count].colonna == coorx[0])
		existingCol = TRUE;

	if(existingCol == TRUE)
		if(pArray[Count].riga == atoi(tmpStr))
		         existingRaw = TRUE;
			
	if((existingCol == TRUE) && (existingRaw == TRUE))
		break;
}
Alhazred non è collegato   Rispondi citando
Rispondi


Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti)
 
Strumenti discussione

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is ON
Gli smilies sono ON
[IMG] è ON
Il codice HTML è OFF

Vai al forum

Discussioni simili
Discussione Autore discussione Forum Risposte Ultimo messaggio
La grande battaglia dei super eroi! Sbavi Chiacchiere in libertà 83 27-02-2009 10.43.39
battaglia navale in c# Joy&Lu Programmazione 3 01-09-2008 15.08.58
Il Signore degli Anelli - La Battaglia per la terra di mezzo Darth Maul Masterizzazione Giochi Games 0 01-09-2006 18.16.18
[C] Battaglia Navale (versione client server) in Linux Nanri Programmazione 11 06-08-2005 14.50.27

Orario GMT +2. Ora sono le: 08.13.52.


E' vietata la riproduzione, anche solo in parte, di contenuti e grafica.
Copyright © 1999-2017 Edizioni Master S.p.A. p.iva: 02105820787 • Tutti i diritti sono riservati
L'editore NON si assume nessuna responsabilità dei contenuti pubblicati sul forum in quanto redatti direttamente dagli utenti.
Questi ultimi sono responsabili dei contenuti da loro riportati nelle discussioni del forum
Powered by vBulletin - 2010 Copyright © Jelsoft Enterprises Limited.