woaidongmao

文章均收录自他人博客,但不喜标题前加-[转贴],因其丑陋,见谅!~
随笔 - 1469, 文章 - 0, 评论 - 661, 引用 - 0
数据加载中……

LEX匹配C++注释

是不是符合标准请看标准文档  
  %{  
  %}  
  %option   caseless     outfile="1.l.c"   stack   noyy_top_state   nostdinit  
  %x   MCOMM   LCOMM   STRLT  
  AC .|{NL}  
  NL \r\n|\r|\n  
  MCOMM_BEGIN \/\*|\/\\{NL}\*  
  MCOMM_END "*/"|\*\\{NL}\/  
  LCOMM_BEGIN \/\/|"/"\\{NL}"/"  
  DBL_CHAR [^\"\\\n\r]|\\{AC}  
  SIG_CHAR [^\'\\\n\r]|\\{AC}  
  STR_LIT \"{DBL_CHAR}*\"|\'{SIG_CHAR}*\'  
  %%  
  <INITIAL>{  
  {MCOMM_BEGIN} {   BEGIN(MCOMM);   }  
  {LCOMM_BEGIN} {   BEGIN(LCOMM);   }  
  {STR_LIT} {   ECHO;   }  
  {AC} {   ECHO;   }  
  }  
  <MCOMM>{  
  {MCOMM_END} {   BEGIN(INITIAL);   }  
  {AC}  
  }  
  <LCOMM>{  
  {NL} {   BEGIN(INITIAL);   }  
  \\{NL}  
  .  
  }  
  %%  
  int   yywrap()   {   return   1;   }  
  int   main()  
  {  
  return   yylex();  
  } 

posted on 2008-11-27 22:00 肥仔 阅读(1545) 评论(0)  编辑 收藏 引用 所属分类: LEX & YACC


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理