⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 netlist.l.bak

📁 circuit calculation program
💻 BAK
字号:
%{
#include "circuit.h"
#include "y.tab.h"

extern YYSTYPE yyval, yylval;

#define read_to_eol() do {char c;while ((c = input()) && !strchr("\r\n\f",c) ); }while(0)

%}

%option lex-compat
%x id1 id2 value unit post_unit

%%
\[		{BEGIN(id1);return COMPONENT_START;}

<post_unit>\]	{BEGIN(0);return COMPONENT_END;}

<*>[\n\r\f]	;

<*>[ \t]*	;



<id1>[^\[\]\(\)\n][^\n\r]*	{
		BEGIN(id2);
		strcpy (yylval.svalue.s,yytext); 
		printf ("0-%s\n",yytext);
		return IDENTIFIER;
	}

<id2>[^\[\]\(\)\n][^\n\r]*	{
		BEGIN(value);
		strcpy (yylval.svalue.s,yytext); 
		printf ("1-%s\n",yytext);
		return IDENTIFIER;
	}

<value>[^\[\]\(\)\n][^\n\r]*	{
		BEGIN(post_unit);
		strcpy (yylval.svalue.s,yytext); 
		printf ("2-%s\n",yytext);
		return IDENTIFIER;
	}

<value>[0-9]*.[0-9]*[ ]*{pF|uF|F|H|mH|K}	{
		BEGIN(post_unit);
		strcpy (yylval.svalue.s,yytext); 
		printf ("3-%s\n",yytext);
		return IDENTIFIER;		
	}
	
	
\(	{return NODE_START;}

\)	{return NODE_END;}




%%

int yywrap () {return 1;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -