c-forward-conditional is an interactive compiled Lisp function in `cc-cmds.el'.

(c-forward-conditional COUNT &optional TARGET-DEPTH WITH-ELSE)

Move forward across a preprocessor conditional, leaving mark behind.
A prefix argument acts as a repeat count. With a negative argument,
move backward across a preprocessor conditional.

If there aren't enough conditionals after (or before) point, an
error is signaled.

"#elif" is treated like "#else" followed by "#if", except that
the nesting level isn't changed when tracking subconditionals.

The optional arguments TARGET-DEPTH and WITH-ELSE are historical,
and have the same meanings as in `c-scan-conditionals'. If you
are calling c-forward-conditional from a program, you might want
to call `c-scan-conditionals' directly instead.