|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Sep 2010
Messaggi: 8
|
Funzione memcpy
Ciao a tutti , veloce informazione riguardo la memcpy , se creo un array di 50 elementi di una struttura come da esempio:
typedef struct _Cordinate{ unsigned int X; unsigned int dX; unsigned int Y; unsigned int dY; unsigned int Indice; }Cordinate; Quando trasferisco i dati da un array all'altro è corretto scrivere il seguente codice: _Cordinate AA[50]; //Secondo array memcpy(AA,MappaC,50 * 5); Eseguendo il codice mi accorgo che vengono trasferiti dalla memcpy solo i primi 13 elemementi dell'array , dove sbaglio. Grazie a tutti per l'aiuto. |
|
|
|
|
|
#2 | |
|
Member
Iscritto dal: Mar 2008
Messaggi: 267
|
Quote:
Codice:
Cordinate AA[50]; //Perché usi _Cordinate se c'è il typedef? memcpy(AA, MappaC, sizeof(struct _Cordinate)*50); |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
|
Sostituisci 50 * 5;
con 50 * sizeof(Cordinate); Un unsigned int non occupa 1 byte ma 4, quindi ti perdevi un quarto dell'array.
__________________
Il sole è giallo |
|
|
|
|
|
#4 |
|
Junior Member
Iscritto dal: Sep 2010
Messaggi: 8
|
Ok , cosi funziona , grazie a tutti
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:19.




















