Skip to main content

##continue

Continues a macro definition on the next line, to support multiline macro definitions.

Description

This macro preprocessor directive continues a macro definition on the next line, to support multiline macro definitions. It appears at the end of a line of a macro definition to signal the continuation, in the form:

#define <beginning of macro definition> ##continue
     <continuation of macro definition>

A macro definition can use multiple ##continue directives.

For example,

#define Multiline(%a,%b,%c) ##continue
    SET v=" of Oz" ##continue
    SET line1="%a"_v ##continue
    SET line2="%b"_v ##continue
    SET line3="%c"_v
    
 $$$Multiline(Scarecrow,Tin Woodman,Lion)
 WRITE "Here is line 1: ",line1,!
 WRITE "Here is line 2: ",line2,!
 WRITE "Here is line 3: ",line3,!      

##continue must appear at the end of every macro definition line, except the last line. This includes comment lines. Therefore, ##continue must end each line of a ##; or #; single-line comment or a multi-line /* comment text */, as follows:

#define <beginning of macro definition> ##continue
#; single line comment ##continue
    /* Multi-line long ##continue
       wordy comment */ ##continue
     <continuation of macro definition>
FeedbackOpens in a new tab