test.c

来自「一个C语言的词法分析器」· C语言 代码 · 共 46 行

C
46
字号
/*
#include <stdio.h>
#include "word_analysis.h"
#include "error_.h"

int main()
{
	ENTRY entry;
	char tem[800] = "$#int i = xing+54-x+54-i;\r\n 0.543e.e345 double d = -3+3;\'x\'\"xi\" -54325345e--4xing /* fjdslkjfd/fjdlks*/int j=-897 \r\n \
/*if(done && perfect=987) //sleep(888);";
	//int rst;
	
	//scanf ("%s", tem );
	printf("%s\n", tem );
	init_pointer(tem );
	do
	{
		if( is_end() )
			break;
		entry = get_token( );
		if( entry.type == TYPE_UNDEF )
		{
			printf("deal to %s\n", p_char );
		}
		else if( entry.type == TYPE_CONST_NUM )
			printf("entry <type,pointer, *pointer> < %d , %x , %d >\n", entry.type, entry.p_item, *(int*)entry.p_item );
		else if( entry.type == TYPE_CONST_REAL )
			printf("entry <type,pointer, *pointer> < %d , %x , %f >\n", entry.type, entry.p_item, *(double*)entry.p_item );
		else if (entry.type == TYPE_CONST_CHAR )
			printf("entry <type,pointer, *pointer> < %d , %x , %c >\n", entry.type, entry.p_item, *(char*)entry.p_item );
		else
			printf("entry <type,pointer, *pointer> < %d , %x , %s >\n", entry.type, entry.p_item, entry.p_item );
		
	}while(TRUE );
	print_error();
	/* code for testing goto_token func */
/*	rst = goto_token( );
	if( rst )
		printf("go to token:%s\n", p_char );
	else
		printf("cannot get a token\n" );
*/
/*	return 0;
}
*/	
  

⌨️ 快捷键说明

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