首页 >> 水泵

C编译器LEX和YACC输入源文件电泳设备

文章来源:南苑五金网  |  2022-07-13

C编译器LEX和YACC输入源文件

C编译器LEX和YACC输入源文件 2011年12月10日 来源: C编译器LEX和YACC输入源文件。 /*YACC--LALR(1) PARSER*/

%token IDENTIFIER CONSTANT STRING_LITERAL SIZEOF%token PTR_OP INC_OP DEC_OP LEFT_OP RIGHT_OP LE_OP GE_OP EQ_OP NE_OP%token AND_OP OR_OP MUL_ASSIGN DIV_ASSIGN MOD_ASSIGN ADD_ASSIGN%token SUB_ASSIGN LEFT_ASSIGN RIGHT_ASSIGN AND_ASSIGN%token XOR_ASSIGN OR_ASSIGN TYPE_NAME

%token TYPEDEF EXTERN STATIC AUTO REGISTER%token CHAR SHORT INT LONG SIGNED UNSIGNED FLOAT DOUBLE CONST VOLATILE VOID%token STRUCT UNION ENUM ELIPSIS RANGE

%token CASE DEFAULT IF ELSE SWITCH WHILE DO FOR GOTO CONTINUE BREAK RETURN

%start file%%

primary_expr: identifier| CONSTANT| STRING_LITERAL| '(' expr ')';

postfix_expr: primary_expr| postfix_expr '[' expr ']'| postfix_expr '(' ')'| postfix_expr '(' argument_expr_list ')'| postfix_expr '.' identifier| postfix_expr PTR_OP identifier| postfix_expr INC_OP| postfix_expr DEC_OP;

argument_expr_list: assignment_expr| argument_expr_list ',' assignment_expr;

unary_expr: postfix_expr| INC_OP unary_expr| DEC_OP unary_expr| unary_operator cast_expr| SIZEOF unary_expr| SIZEOF '(' type_name ')';

unary_operator: '&'| '*'| '+'| '-'| '~'| '!';

cast_expr: unary_expr| '(' type_name ')' cast_expr;

multiplicative_expr: cast_expr| multiplicative_expr '*' cast_expr| multiplicative_expr '/' cast_expr| multiplicative_expr '%' cast_expr

additive_expr: multiplicative_expr| additive_expr '+' multiplicative_expr| additive_expr '-' multiplicative_expr;

shift_expr: additive_expr| shift_expr LEFT_OP additive_expr| shift_expr RIGHT_OP additive_expr;

relational_expr: shift_expr| relational_expr '<' shift_expr| relational_expr '>' shift_expr| relational_expr LE_OP shift_expr| relational_expr GE_OP shift_expr;

equality_expr: relational_expr| equality_expr EQ_OP relational_expr| equality_expr NE_OP relational_expr;

and_expr: equality_expr| and_expr '&' equality_expr;

exclusive_or_expr: and_expr| exclusive_or_expr '^' and_expr;

inclusive_or_expr: exclusive_or_expr| inclusive_or_expr '|' exclusive_or_expr;

logical_and_expr: inclusive_or_expr| logical_and_expr AND_OP inclusive_or_expr;

logical_or_expr: logical_and_expr| logical_or_expr OR_OP logical_and_expr;

conditional_expr: logical_or_expr| logical_or_expr '?' logical_or_expr ':' conditional_expr;

assignment_expr: conditional_expr| unary_expr assignment_operator assignment_expr;

assignment_operator: '='| MUL_ASSIGN| DIV_ASSIGN| MOD_ASSIGN| ADD_ASSIGN| SUB_ASSIGN| LEFT_ASSIGN| RIGHT_ASSIGN| AND_ASSIGN| XOR_ASSIGN| OR_ASSIGN;

expr: assignment_expr| expr ',' assignment_expr;

constant_expr: conditional_expr;

declaration: declaration_specifiers ';'| declaration_specifiers init_declarator_list ';';

declaration_specifiers: storage_class_specifier| storage_class_specifier declaration_specifiers 

活动奖品报价

九寨沟县第七百一十一号便利店

永泰汽贸销售

海康4路价格

黑山县小东镇引领时尚精品服装店

侯马市乡镇企业总公司

真空酱鸭

信昌碎纸机价格

邯郸县文霞文印部

玩具卡通电话报价