BCX Console Demonstration Program s124.bas
|
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' BCX Version 1.87 adds more powerful MACRO capabilities using CONST's
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MACRO ByeBye = "Goodbye!" 'ByeBye is a string constant
MACRO STRINGPTR(A) = (CHAR*)A 'A MACRO with one argument
DIM pA AS LPSTR ' allocate a 32 bit string POINTER variable
DIM pB AS LPSTR ' ... ditto ...
' Try out our new MACRO
pA = STRINGPTR("Hello!") 'pA points to "Hello!"
pB = pA + 1 'pB points to "ello!" (example of POINTER arithmetic)
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' Prepending or Appending the "$" character fools BCX into
' treating VARIABLES and CONST's as STRINGS
'~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PRINT $pA ' Displays "Hello!"
PRINT $pB ' Displays "ello!"
PRINT $ByeBye ' Displays "Goodbye!"
Result:
Hello!
ello!
Goodbye!