Differenze tra le versioni di "Conoscere via codice il nome di una Struttura"
Da Gambas-it.org - Wikipedia.
Riga 10: | Riga 10: | ||
− | + | Public Sub Main() | |
Dim st As New <FONT Color=#B22222>STRUTTURA</font> | Dim st As New <FONT Color=#B22222>STRUTTURA</font> | ||
Riga 22: | Riga 22: | ||
Print "Nome della Struttura: "; String@(Pointer@(p2 + (SizeOf(gb.Pointer) * 3))) | Print "Nome della Struttura: "; String@(Pointer@(p2 + (SizeOf(gb.Pointer) * 3))) | ||
− | + | End |
Versione delle 18:30, 7 giu 2024
Per conoscere via codice l'etichetta identificativa di una Struttura partendo dalla sua variabile, si effettuerà una ricerca nella sua area di memoria, puntando alla quale mediante apposito Puntatore:
Mostriamo un semplice esempio pratico valido per un sistema a 64bit, nel quale il nome (Etichetta) identificativo della Struttura è "STRUTTURA":
Public Struct STRUTTURA b As Byte c As Short i As Integer End Struct Public Sub Main() Dim st As New STRUTTURA Dim p1, p2 As Pointer ' Puntiamo all'oggetto Struttura: p1 = Object.Address(st) p2 = Pointer@(p1) Print "Nome della Struttura: "; String@(Pointer@(p2 + (SizeOf(gb.Pointer) * 3))) End