manpagez: man pages & more
info flex
Home | html | info | man
[ << ] [ < ] [ Up ] [ > ] [ >> ]         [Top] [Contents] [Index] [ ? ]

How can I match C-style comments?

You might be tempted to try something like this:

"/*".*"*/"       // WRONG!

or, worse, this:

"/*"(.|\n)"*/"   // WRONG!

The above rules will eat too much input, and blow up on things like:

/* a comment */ do_my_thing( "oops */" );

Here is one way which allows you to track line information:

<INITIAL>{
"/*"              BEGIN(IN_COMMENT);
}
<IN_COMMENT>{
"*/"      BEGIN(INITIAL);
[^*\n]+   // eat comment in chunks
"*"       // eat the lone star
\n        yylineno++;
}

This document was generated on November 4, 2011 using texi2html 5.0.

© manpagez.com 2000-2024
Individual documents may contain additional copyright information.