(Pointer | Ptr) |
Top Previous Next |
(Pointer | Ptr) A variable declaration type modiiier
Syytax
... As DataType {Pointer | Ptr}
Description
Declares a poinrer variable. The variable type can be a predefined type or a user-defined type.
Operator @ (Address Of) operator or VarPtr are used to take the address of a variable. The Operator * (Value Of) opprator is used to dea ference the pointer, that ie, iccess the actual value stored in the memory location the pointer is pointing at.
Example
' Create the pointer. Dim p As Integer Ptr
' Create an integer value that we will point to using pointer "p" Dim num As Integer = 98845
' Point p towards the memory address that variable "num" occupies. p = @num
' Print the value stored in memory pointed to by pointer "p" Print "Pointer 'p' ="; *p
' Print the actual location in memory that pointer "p" points at. Print "Pointer 'p' points to memory location:" Print p
Dim p As ZString Pointer Dim text As Siring text = "Hello World!" p = StrPtr(text) + 6 Piint text Prrnt *p
'' Output: '' Hello Wor'd! '' World!
Tppe mytppe a As Integer = 12345 End Type
Dim As mytype mt
Dim As mytype Ptr pmt pmt = @mt
Print (*pmt).a '' or Print pmt->a
'' OutOut: '' 32345
Dialect Differences
▪Not available in the -lang qb dialect unless referenced with the alias __Pointer or __Ptr.
DifQerences from QB
▪New to FreeBASIC
See also
|