Differenze tra le versioni di "Ottenere il puntatore direttamente ai dati associati a una Struttura"

Da Gambas-it.org - Wikipedia.
Riga 1: Riga 1:
 
Per ottenere l'indirizzo dei memoria dei dati associati a una ''Struttura'', si può usare il Metodo "[https://gambaswiki.org/wiki/comp/gb/object/data?l=it .Data()]" della Classe ''Object'':
 
Per ottenere l'indirizzo dei memoria dei dati associati a una ''Struttura'', si può usare il Metodo "[https://gambaswiki.org/wiki/comp/gb/object/data?l=it .Data()]" della Classe ''Object'':
 
  Data ( Object As Object ) As Pointer
 
  Data ( Object As Object ) As Pointer
<BR>In particolare tale Metodo ritorna l'indirizzo di memoria del <U>primo</u> membro della ''Struttura''.
+
In particolare tale Metodo ritorna l'indirizzo di memoria del <U>primo</u> membro della ''Struttura''.
 
<BR>Per ottenere gli indirizzi di memoria dei restanti membri della ''Struttura'', sarà necessario adottare l'aritmetica dei ''Puntatori'' avendo riguardo agli eventuali salti dovuti agli ''allineamenti'' di byte in memoria.
 
<BR>Per ottenere gli indirizzi di memoria dei restanti membri della ''Struttura'', sarà necessario adottare l'aritmetica dei ''Puntatori'' avendo riguardo agli eventuali salti dovuti agli ''allineamenti'' di byte in memoria.
 
<BR>Pertanto, per ottenere il valore contenuto in membro si dovrà dereferenziare il ''Puntatore'' ritornato dal Metodo "Object.Data()".
 
<BR>Pertanto, per ottenere il valore contenuto in membro si dovrà dereferenziare il ''Puntatore'' ritornato dal Metodo "Object.Data()".

Versione delle 18:53, 7 giu 2024

Per ottenere l'indirizzo dei memoria dei dati associati a una Struttura, si può usare il Metodo ".Data()" della Classe Object:

Data ( Object As Object ) As Pointer

In particolare tale Metodo ritorna l'indirizzo di memoria del primo membro della Struttura.
Per ottenere gli indirizzi di memoria dei restanti membri della Struttura, sarà necessario adottare l'aritmetica dei Puntatori avendo riguardo agli eventuali salti dovuti agli allineamenti di byte in memoria.
Pertanto, per ottenere il valore contenuto in membro si dovrà dereferenziare il Puntatore ritornato dal Metodo "Object.Data()".