Friday, January 04, 2013

C Macros

http://gcc.gnu.org/onlinedocs/cpp/Macros.html

http://gcc.gnu.org/onlinedocs/cpp/Stringification.html#Stringification
http://gcc.gnu.org/onlinedocs/cpp/Concatenation.html#Concatenation


However, two tokens that don't together form a valid token cannot be pasted together. For example, you cannot concatenate x with + in either order. If you try, the preprocessor issues a warning and emits the two tokens. Whether it puts white space between the tokens is undefined. It is common to find unnecessary uses of `##' in complex macros. If you get this warning, it is likely that you can simply remove the `##'.









Don't need ## for filelist[] for concatenation, because the [] is recognized by pre-processor.

No comments:

Related Posts Plugin for WordPress, Blogger...