Differenze tra le versioni di "Modificare il valore di una variabile Integer puntata da un Puntatore e sua dereferenziazione con le funzioni esterne del API di SDL2"

Da Gambas-it.org - Wikipedia.
 
Riga 1: Riga 1:
 
Utilizzando un paio di funzioni esterne del API della libreria '''SDL2''' è possibile modificare il valore contenuto da una varibile di tipo ''Intero'' (''Integer'') puntata da un ''Puntatore'', nonché dereferenziare tale ''Puntatore'' per ottenere il valore contenuto da quella variabile ''Intero''.
 
Utilizzando un paio di funzioni esterne del API della libreria '''SDL2''' è possibile modificare il valore contenuto da una varibile di tipo ''Intero'' (''Integer'') puntata da un ''Puntatore'', nonché dereferenziare tale ''Puntatore'' per ottenere il valore contenuto da quella variabile ''Intero''.
  
E' necessario utilizzare la seguente libreria condivisa: "''libSDL2-2.0.so.0.2800.5'' ".
+
E' necessario utilizzare la seguente libreria condivisa: "''libSDL2-2.0.so.0.3000.0'' ".
  
 
Mostriamo di seguito un semplice esempio pratico:
 
Mostriamo di seguito un semplice esempio pratico:
  Library "libSDL2-2.0:0.2800.5"
+
  Library "libSDL2-2.0:0.3000.0"
 
   
 
   
 
  <FONT Color=gray>' ''int SDL_AtomicGet(SDL_atomic_t* a)''
 
  <FONT Color=gray>' ''int SDL_AtomicGet(SDL_atomic_t* a)''

Versione attuale delle 16:47, 18 mar 2024

Utilizzando un paio di funzioni esterne del API della libreria SDL2 è possibile modificare il valore contenuto da una varibile di tipo Intero (Integer) puntata da un Puntatore, nonché dereferenziare tale Puntatore per ottenere il valore contenuto da quella variabile Intero.

E' necessario utilizzare la seguente libreria condivisa: "libSDL2-2.0.so.0.3000.0 ".

Mostriamo di seguito un semplice esempio pratico:

Library "libSDL2-2.0:0.3000.0"

' int SDL_AtomicGet(SDL_atomic_t* a)
' Gets the value of an atomic variable.
Private Extern SDL_AtomicGet(a As Pointer) As Integer

' int SDL_AtomicSet(SDL_atomic_t* a, int v)
' Sets an atomic variable to a value.
Private Extern SDL_AtomicSet(a As Pointer, v As Integer) As Integer


Public Sub Main()

 Dim i, orig, n As Integer
 Dim p As Pointer

 i = 1111

' Creiamo un "Puntatore" alla variabile di tipo "Intero":
 p = VarPtr(i)
  
' Modifichiamo il valore della variabile "Intero" puntata dal "Puntatore".
' La funzione "SDL_AtomicSet()" ritorna il valore originario della variabile "Intero":
 orig = SDL_AtomicSet(p, 2222)
 Print "Valore originario: "; orig
  
' Dereferenziamo il "Puntatore" per ottenere il valore ora contenuto dalla variabile di tipo "Intero":
 n = SDL_AtomicGet(p)

 Print "Valore nuovo: "; n
   
End


Riferimenti