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 06-07-2004, 21.10.23   #91
P8257 WebMaster
Gold Member
 
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
P8257 WebMaster promette bene
Basta stampare il codice ascii col '%c'....

Bye
P8257 WebMaster non è collegato   Rispondi citando
Vecchio 06-07-2004, 22.07.15   #92
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Sto testando il layout della griglia e se sono giusti i comandi per prendere le coordinate e ristampare la griglia aggiornata... ma maledetto "... la memoria non poteva essere READ!"
Non riesco a farlo andare, esce sempre questo errore, sono certo che non è il programma, mi usciva anche quando cercavo di vedere un DivX ed ho risolto togliendo tutti i codec e rimettendoli, ma qui come faccio?
Vi allego il codice della griglia, provate a compilarlo e vedete se a voi funziona per favore.
Alhazred non è collegato   Rispondi citando
Vecchio 06-07-2004, 22.10.12   #93
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Facendo copia-incolla per risistemare il codice mi sono accorto di aver fatto un errore:

scanf("%s",i); <--- questa diventa scanf("%s",r);
i = ChartoI(r);
cArray[i][j] = 'x';
Alhazred non è collegato   Rispondi citando
Vecchio 07-07-2004, 00.36.40   #94
NS-1
Hero Member
 
L'avatar di NS-1
 
Registrato: 09-05-2002
Loc.: COMO
Messaggi: 1.135
NS-1 promette bene
scusa ma "r" non mi sembra un array... perchè non scrivi:

scanf("%s", &r);

fammi sapere
___________________________________

...ad ogni alba sorgerà il tuo profumo
NS-1 non è collegato   Rispondi citando
Vecchio 07-07-2004, 09.44.52   #95
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
Nel codice che hai postato ho notato subito alcuni errori piuttosto rilevanti:

1) Lo scanf fa esplodere tutto.
Segui il consiglio di NS-1
2) Hai scambiato le righe con le colonne
3) La colonna DEVE essere maiuscola, altrimenti non funziona.

Poi ho notato:

1) Che utilizzi "%s" al posto di "%c" quando devi immettere 1 solo carattere
2) Che a='a' nel caso in cui a sia definito char, si può anche scrivere come a=97
Non capisco perchè hai implementato CharToI (Assolutamente superfluo)
3) Il putchar ripetuto aumenta le righe di codice inutilmente:
Es:
putchar(196);
putchar(196);
putchar(196);
putchar(194);

lo si può riscrivere così:
printf("%c%c%c%c",196,196,196,194);

-Cerca di fare a meno di utilizzare nuove funzioni il cui scopo sia raggiungibile attraverso l'uso di quelle già utilizzate.

NON sono critiche ma consigli.
Piano piano si affinano le tecniche a tutto vantaggio dell'esperienza del programmatore.
LoryOne non è collegato   Rispondi citando
Vecchio 07-07-2004, 10.21.23   #96
P8257 WebMaster
Gold Member
 
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
P8257 WebMaster promette bene
Va in crash di brutto brutto brutto ...

I consigli dati sono esatti, uno lo aggiungo anch'io:
Acquisisci l'imput come carattere o, addirittura come stringa .. è più sicuro .. vedi thread " ...non capisco più nulla! (--- C ---)" di NS-1...

Bye
P8257 WebMaster non è collegato   Rispondi citando
Vecchio 07-07-2004, 10.24.52   #97
P8257 WebMaster
Gold Member
 
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
P8257 WebMaster promette bene
Il motivo del crash .. è che non permetti alla scanf di immagazzianre un oggetto nella modalità adatta .. infatti se non gli passi l'esatto indirizzo di "j".. lei va a scrivere "dove gli capita" .. e, tanto per cambiare, quel "dove gli capita" è un'area di memoria che "non poteva essere read o write."

int j;
scanf("%d", &j);

Altra cosa:
Perché scrivi:

Codice:
printf("%s","     A   B   C   D   E   F   G   H   I   J\n");
Basta scrivere:

Codice:
printf("     A   B   C   D   E   F   G   H   I   J\n");
La printf capisce che vuoi stampare una stringa...

Bye
P8257 WebMaster non è collegato   Rispondi citando
Vecchio 07-07-2004, 10.33.41   #98
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
1) Lo scanf fa esplodere tutto.
Segui il consiglio di NS-1
2) Hai scambiato le righe con le colonne
3) La colonna DEVE essere maiuscola, altrimenti non funziona.
Provvederò.
Quota:
Poi ho notato:
1) Che utilizzi "%s" al posto di "%c" quando devi immettere 1 solo carattere
Pensavo potesse essere quello a generarmi l'errore dato che mi era già capitato, all'inizio avevo messo %c, ma evidentemente mi sono dimenticato di rimettercelo prima di postarvi il codice.
Quota:
2) Che a='a' nel caso in cui a sia definito char, si può anche scrivere come a=97
Non capisco perchè hai implementato CharToI (Assolutamente superfluo)
All'inizio del 3d si era parlato di questa cosa, mi è stata consigliato ChartoI, forse con l'evolversi del programma è effettivamente diventato inutile.
Quota:
3) Il putchar ripetuto aumenta le righe di codice inutilmente:
Es:
putchar(196);
putchar(196);
putchar(196);
putchar(194);

lo si può riscrivere così:
printf("%c%c%c%c",196,196,196,194);
Questa non la sapevo.
Quota:
NON sono critiche ma consigli.
Piano piano si affinano le tecniche a tutto vantaggio dell'esperienza del programmatore.
Non preoccuparti, so bene che quello che mi dite è per aiutarmi e per questo vi ringrazio
Alhazred non è collegato   Rispondi citando
Vecchio 07-07-2004, 10.40.42   #99
P8257 WebMaster
Gold Member
 
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
P8257 WebMaster promette bene
Quota:
Alhazred ha scritto:

All'inizio del 3d si era parlato di questa cosa, mi è stata consigliato ChartoI, forse con l'evolversi del programma è effettivamente diventato inutile.
Avevo consigliato "ChartoI" perché credevo avesse bisogno di un rapporto colonna riga 1:1 .. in pratica la chartoi fa un casting formale e una semplice operazione "C - 64" così da eguagliare come numerazione le righe e le colonne...

Chiaramente ora è da valutare l'utilità effettiva...

Bye
P8257 WebMaster non è collegato   Rispondi citando
Vecchio 07-07-2004, 10.44.10   #100
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Adesso va! (Y)
Alhazred non è collegato   Rispondi citando
Vecchio 07-07-2004, 10.45.20   #101
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


Avevo consigliato "ChartoI" perché credevo avesse bisogno di un rapporto colonna riga 1:1 .. in pratica la chartoi fa un casting formale e una semplice operazione "C - 64" così da eguagliare come numerazione le righe e le colonne...

Chiaramente ora è da valutare l'utilità effettiva...

Bye
Difatti l'ho tolto.
Alhazred non è collegato   Rispondi citando
Vecchio 07-07-2004, 11.29.09   #102
NS-1
Hero Member
 
L'avatar di NS-1
 
Registrato: 09-05-2002
Loc.: COMO
Messaggi: 1.135
NS-1 promette bene
... ti consiglio di utilizzare gets() al posto di scanf()...

___________________________________

...ad ogni alba sorgerà il tuo profumo
NS-1 non è collegato   Rispondi citando
Vecchio 07-07-2004, 11.31.51   #103
NS-1
Hero Member
 
L'avatar di NS-1
 
Registrato: 09-05-2002
Loc.: COMO
Messaggi: 1.135
NS-1 promette bene
gets()

Syntax:
#include <stdio.h>
char *gets( char *str );

The gets() function reads characters from STDIN and loads them into str, until a newline or EOF is reached. The newline character is translated into a null termination. The return value of gets() is the read-in string, or NULL if there is an error.
___________________________________

...ad ogni alba sorgerà il tuo profumo
NS-1 non è collegato   Rispondi citando
Vecchio 07-07-2004, 11.40.04   #104
P8257 WebMaster
Gold Member
 
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
P8257 WebMaster promette bene
Si, molto più sicuro .. attenti che "gets" vuole una stringa .. anche se si legge 1 solo carattere .. comunque restituisce un puntatore a stringa....

Bye
P8257 WebMaster non è collegato   Rispondi citando
Vecchio 07-07-2004, 13.27.47   #105
Alhazred
Made in Japan
Top Poster
 
L'avatar di Alhazred
 
Registrato: 04-07-2001
Messaggi: 4.461
Alhazred promette bene
Sto pensando ora a come tenere memorizzati i dati relativi alla griglia di ciascun giocatore.
Avevo pensato una cosa di questo tipo:

char *griglia;
griglia = malloc(dimensioni per contenere cArray[10][10])

La prima volta che parte il programma si riserva un'area di memoria per la griglia, quando parte la seconda volta si riferirà alla stessa area di memoria dato che anche questo cercherà di allocarla con lo stesso nome?
Se è così, come faccio a fare in modo che le 2 istanze del programma abbiano aree di memoria diverse?
Quanta memoria devo allocare per contenere l'array di 100 caratteri?
Basta fare il conto 1 carattere = 1 byte => 100 caratteri = 100 bytes o devo tener conto di qualcos'altro?
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 11.43.39
battaglia navale in c# Joy&Lu Programmazione 3 01-09-2008 16.08.58
Il Signore degli Anelli - La Battaglia per la terra di mezzo Darth Maul Masterizzazione Giochi Games 0 01-09-2006 19.16.18
[C] Battaglia Navale (versione client server) in Linux Nanri Programmazione 11 06-08-2005 15.50.27

Orario GMT +2. Ora sono le: 10.55.50.


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.