You may want to have a look at GPP, Generic Pre Processor. It's customizable but it looks like it comes with some predefined setting which will do C/C++ preprocessing.
Edit: Looks like -C is the setting to use
-C
cpp compatibility mode. This is the mode where gpp's behavior is the closest to that of >cpp. Unlike in the default mode, meta-macro expansion occurs only at the beginning of >lines, and C comments and strings are understood.