A double pound sign (##) is the preprocessing operator for concatenation. It is used when substituting macro parameters into the macro body to tell the preprocessor to concatenate the tokens on either side of the ## operator after the parameters have been substituted. For example:
#define OPEN(fs) fs ## _open
If this macro is called as shown here:
OPEN(ext3);
It will produce the following result:
ext3_open
Copyright © 2009 by Bruce Blinn