>I am not sure how relevant the following is for the discussion, but note that whatever you #define need not be a valid expression. It is just text which is replaced before the actual compilation phase. In theory, this might be used to your advantage, sometimes - although it might also make the program quite confusing.
>
>Here is an example:
>
>
>#define mydef "this is
>
>clear
>? mydef a text"
>
>
>The output shows
This is a textYou're right... just recently I found some piece of my old FPD2.6 code, with
#define _out fwrite(h, chr(9)+
... _out "some string")
And as Fabio points out, an empty string is also a string... so, how does one #Define an empty string (not a pair of quotes)?