数字处理模块.cpp

来自「词法分析器」· C++ 代码 · 共 45 行

CPP
45
字号
void num()
{
	int b=0,p2;
	while(isdigit(c)){
		lexbuf[b++]=c;
		c=getchar();
	}
	if(c=='.'){
		lexbuf[b++]=c;
		c=getchar();
		if(isdigit(c)){
			while(isdigit(c)){
			lexbuf[b++]=c;
			c=getchar();
			}
			lexbuf[b]=EOS;
			p2=insertc(lexbuf,NUM,lineno);
			printf("word=%s  type=%d  line=%d\n",d[p2].name,d[p2].type,d[p2].line);
		}
		else if(isalpha(c))
		{
				error();
		}
	}
	else if(isalpha(c)){
		error();
		//	lexbuf[b]=EOS;
		//	p2=insertc(lexbuf,NUM,lineno);
		//	printf("%s  %d  %d\n",d[p2].name,d[p2].type,d[p2].line);
		}
	else{
		lexbuf[b]=EOS;
		p2=insertc(lexbuf,NUM,lineno);
		printf("word=%s  type=%d  line=%d\n",d[p2].name,d[p2].type,d[p2].line);
	}

}







⌨️ 快捷键说明

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