Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Sono alle prime armi, tento di fare il gioco sneak(serpente che si mangia i frutti e si allunga)
Forum - C/C++ - Sono alle prime armi, tento di fare il gioco sneak(serpente che si mangia i frutti e si allunga) - Pagina 2

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
TheDarkJuster (Member)
Guru^2


Messaggi: 1620
Iscritto: 27/09/2013

Segnala al moderatore
Postato alle 21:25
Mercoledì, 27/08/2014
Puoi vedere una struttura come una "raccolta di variabili" (int X e int Y nel tuo caso). Di fatto stai dichiarando un nuovo tipo, partendo da tipi già esistenti (interi nel tuo caso). L' asterisco indica che quello è un puntatore. Un puntatore è una variabile che contiene l' indirizzo di memoria iniziale di un'altra variabile/array. Questo è spiegato qui: http://it.wikipedia.org/wiki/Puntatore_(programmazione) e qui: http://www.science.unitn.it/~fiorella/guidac/guidac056.html . Siccome il parametro è un puntatore, io passo l' indirizzo di memoria della struct, così, quando andrò a modificare Frutto in realtà sto modificando la variabile nello spazio puntato da Frutto. Frutto punta a MioFrutto, la tua struttura, che quindi verrà modificata.

Visual studio mi pare definisca NULL con
#define NULL 0
mentre GCC
#define NULL (void*)0

è il valore di ritorno per una cattiva allocazione e anche un'area di memoria nulla. Un puntatore che punta a null, punta al niente

P.S. !!!Ho commesso un (grave) errore!!! devi fare Frutto->X e Frutto->Y, scusa.

Ogni altra spiegazione relativa a questo argomento la troverai classificata sotto "puntatori". Ti consiglio di studiare i puntatori, e di organizzare la logica del gioco in maniera più ottimale, per tenere divisa la parte di input e output, e poi (se avrai ancora problemi) aprire un altro topic.

Ultima modifica effettuata da TheDarkJuster il 27/08/2014 alle 21:32
PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo