亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ddddd.cpp

?? 詞法分析器
?? CPP
字號:
// 孫揚.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <stdio.h>
#define MAX_DATA_LEN 100
void Prefix(char c[])
{
	for (int i = 0, j = 0; j < MAX_DATA_LEN && c[j] != '\0'; j++)
	{
		if (c[j] != ' ')
			c[i++] = c[j];
	}
	c[i] = '\0';
}
#include<malloc.h>
#include<memory.h>
#define WT_OPERATOR		0	// 操作符
#define WT_UINT			1	// 非負整數(shù)
#define WT_VARIABLE			2	// 變量

#define DFA_STATUS_ERR		255	// 錯誤狀態(tài)

struct WORDNODE
{
	unsigned short byType;			// 類別
	char Value[MAX_DATA_LEN];		// 值
	WORDNODE *pNext;			// 下一結(jié)點
};
int IsNumChar(char b)
{ 
	int a=(int) b;
	if(0<<a<<9) {return 1;}
    else return 0;
}

int GetInt(char c[],int d)////////////////////////////////////////////////////
{      
	return 1;
}

void Clear(WORDNODE *pHeader)
{
	WORDNODE *pNode;

	while (pHeader != NULL)
	{
		pNode = pHeader->pNext;
		free(pHeader);
		pHeader = pNode;
	}
}

int IsEnglishChar(char m)
{
	if ('a'<<m<<'z') {
		return 1;
	}
     else return 0;
}


int GetVariableStatus(char c, int nStatus)
{
	switch (nStatus)
	{
	case 0:
		if (IsEnglishChar(c) || c == '_')
			return 1;
		else
			return DFA_STATUS_ERR;
	case 1:
		if (IsNumChar(c) || IsEnglishChar(c) || c == '_')
			return 1;
		else
			return 2;
	}
	return DFA_STATUS_ERR;
}
int GetVariable(char c[], int nCur)
{
	int nStatus = 0;
	for (; nCur < MAX_DATA_LEN; nCur++)
	{
		nStatus = GetVariableStatus(c[nCur], nStatus);
		switch (nStatus)
		{
		case 2:
			return nCur - 1;
		case DFA_STATUS_ERR:
			return -1;
		}
	}

	return nCur;
}
WORDNODE* AddNode(char c[], int nBegin, int nEnd, unsigned short byType, WORDNODE *pTail)
{

	WORDNODE *pNode = 
		(WORDNODE *)malloc(sizeof(WORDNODE));
	pNode->byType = byType;
	pNode->pNext = NULL;

	int nChars = nEnd - nBegin + 1;
	memcpy(pNode->Value, &c[nBegin], nChars);
	pNode->Value[nChars] = '\0';

	pTail->pNext = pNode;
	return pNode;
}


int IsOperator(char ch)
{
	switch(ch){
	case '+': return 1;
	case '-': return 1;
	case '*': return 1;
	case '/': return 1;
	default: return 0;
	}

}

WORDNODE* WordAnalysis(char c[])
{

WORDNODE *pHeader = (WORDNODE *)malloc(sizeof(WORDNODE));
pHeader->pNext = NULL;
WORDNODE *pTail = pHeader, *pNode = NULL;
// 詞法分析
char cCur;

for (int nCur1 = 0, nEnd; nCur1 < MAX_DATA_LEN; nCur1++)
{
	cCur = c[nCur1];	// 空間換時間,防止每個if都要計算數(shù)組下標(biāo)

	if (IsNumChar(cCur))											// 整數(shù)
	{
		if ((nEnd = GetInt(c, nCur1)) == -1)	// 出錯
		{
			Clear(pHeader);
			return NULL;
		}
		pTail = AddNode(c, nCur1, nEnd, WT_UINT, pTail);
		nCur1 = nEnd;
	}else if (IsEnglishChar(cCur) || cCur == '_')
	{						// 標(biāo)識符
	         if ((nEnd = GetVariable(c, nCur1)) == -1) 
			 {// 出錯
		         Clear(pHeader);
		         return NULL;
			 }
	         pTail = AddNode(c, nCur1, nEnd, WT_VARIABLE, pTail);
	         nCur1 = nEnd;
	}
	else if (IsOperator(cCur))										// 算符
	       pTail = AddNode(c, nCur1, nCur1, WT_OPERATOR, pTail);
    else if (cCur == '\0')		// 結(jié)束
	       return pHeader;
	else	// 出錯
	{
		Clear(pHeader);
		return NULL;
	}
}
   return pHeader;
}
/***********************************************************************************
* 函數(shù)功能:在鏈表中增加一個結(jié)點。#include <memory.h>
* 入口參數(shù):略。
* 返  回  值:新增結(jié)點指針。
***********************************************************************************/


/*****************************************
* 函數(shù)功能:標(biāo)識符(變量)識別
* 入口參數(shù):c 緩沖區(qū);	nCur 掃描器當(dāng)前字符位置
* 返 回 值:標(biāo)識符結(jié)束位置,-1表示出錯
*****************************************/
 

/*****************************************
* 函數(shù)功能:標(biāo)識符(變量)狀態(tài)跳轉(zhuǎn)。為與DFA相一致,此函數(shù)未優(yōu)化。
* 入口參數(shù):c 當(dāng)前字符;nStatus 當(dāng)前狀態(tài)
* 返 回 值:下一狀態(tài)
*****************************************/

/*bool Save(WORDNODE *pHeader)
{
	// 打開文件
	FILE *f = fopen("Words.txt", "w");
	if (f == NULL)
	{
		Clear(pHeader);
		return false;
	}
	// 空出第一個結(jié)點
	WORDNODE *pNode = pHeader->pNext;
	// 保存數(shù)據(jù)
	while (pNode != NULL)
	{
		fprintf(f, "%c,%s\n", pNode->byType + '0', pNode->Value);
		pNode = pNode->pNext;
	}
	// 關(guān)閉文件
	fclose(f);
	return true;
}*/
// 清空鏈表
int main()//int argc, char* argv[])
{
	WORDNODE *h;
	char c[]={'x','y','-','(','x','-','1','0','0',')','/','2'};
	h=WordAnalysis(c);
	while(h->pNext!=NULL){
		printf("dddddddddddddd\n");
		printf(h->Value);
		h=h->pNext;
	}
	 return 0;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久噜噜噜久久中文字幕色伊伊| 成人免费三级在线| 色视频成人在线观看免| 亚洲免费观看高清完整| 91久久精品一区二区三| 亚洲国产综合人成综合网站| 欧美乱熟臀69xxxxxx| 免费精品99久久国产综合精品| 日韩精品一区二区三区在线| 国产精品一二三| 亚洲欧美自拍偷拍色图| 欧美日韩视频在线观看一区二区三区 | 亚洲综合在线视频| 欧美一区二区三区人| 国产一区在线观看麻豆| 综合网在线视频| 欧美色精品天天在线观看视频| 日韩av午夜在线观看| 久久久亚洲高清| 色综合久久久久综合| 人人精品人人爱| 国产亚洲欧美日韩俺去了| 色综合天天综合| 日本91福利区| 国产精品久久久久婷婷| 91精品国产入口| yourporn久久国产精品| 五月天国产精品| 国产精品久线观看视频| 91精品啪在线观看国产60岁| 成人性色生活片免费看爆迷你毛片| 亚洲成人免费观看| 欧美激情一区二区三区不卡 | 日韩一区二区三区视频在线| 成人丝袜高跟foot| 日韩国产在线一| 国产精品天干天干在观线| 91麻豆精品国产91久久久久| 成人免费黄色大片| 日韩成人午夜电影| 亚洲女同ⅹxx女同tv| 久久久蜜臀国产一区二区| 欧洲一区在线电影| 国产成人午夜精品影院观看视频| 亚洲va欧美va国产va天堂影院| 亚洲国产精品成人综合 | 国产黄色91视频| 亚洲国产精品一区二区www| 国产欧美日韩在线视频| 欧美一个色资源| 欧美日本在线一区| 91亚洲国产成人精品一区二区三| 精品一区二区三区欧美| 偷拍日韩校园综合在线| 亚洲免费资源在线播放| 国产精品美女久久久久aⅴ| 精品电影一区二区| 91精品国产欧美一区二区18| 97se亚洲国产综合在线| 国产成人在线影院| 国产综合久久久久久鬼色| 免费av网站大全久久| 调教+趴+乳夹+国产+精品| 亚洲综合久久久| 亚洲视频一区二区在线观看| 中文一区二区完整视频在线观看| 精品国产一区a| 日韩欧美国产综合一区| 日韩精品一区二区三区视频在线观看 | 国产精品99久久久久久有的能看| 麻豆精品国产91久久久久久| 免费在线观看日韩欧美| 奇米影视在线99精品| 人人精品人人爱| 另类小说欧美激情| 精品一区二区免费| 国产在线看一区| 国产精品99久久久| 成人免费福利片| 成人在线综合网| 93久久精品日日躁夜夜躁欧美| av中文字幕一区| 在线免费观看成人短视频| 在线观看视频一区| 欧美日韩一级视频| 日韩一区二区麻豆国产| 精品久久人人做人人爽| 2023国产精品视频| 国产精品美女一区二区在线观看| 亚洲人成在线观看一区二区| 亚洲精品自拍动漫在线| 亚洲国产精品久久一线不卡| 日韩中文字幕91| 国产一区二区成人久久免费影院| 国产成人精品免费看| 99精品国产视频| 欧美亚日韩国产aⅴ精品中极品| 欧美日韩免费一区二区三区视频| 欧美丰满嫩嫩电影| 久久婷婷国产综合国色天香| 中文字幕精品一区| 亚洲一级二级三级| 久久9热精品视频| 国产乱码精品一区二区三区五月婷 | 日韩成人免费在线| 国产99精品视频| 欧美在线小视频| 精品国精品国产| ...xxx性欧美| 日韩av高清在线观看| 国产不卡视频在线播放| 欧美色综合久久| 精品电影一区二区三区| 亚洲欧洲综合另类| 六月丁香婷婷久久| 色综合久久久久久久| 欧美videossexotv100| 国产精品久久精品日日| 日本欧美大码aⅴ在线播放| 国产成人综合在线观看| 欧美日韩精品一区二区三区蜜桃| 精品伦理精品一区| 亚洲国产综合人成综合网站| 国产精品亚洲一区二区三区在线| 欧美日韩一级大片网址| 国产亚洲制服色| 天天色天天操综合| av一区二区三区| 日韩精品一区二区三区三区免费 | 日韩美一区二区三区| 伊人婷婷欧美激情| 国产成人免费9x9x人网站视频| 欧美三级电影在线观看| 国产精品国产三级国产a| 久久99热这里只有精品| 欧美日韩一区二区在线观看视频| 久久人人爽人人爽| 天天av天天翘天天综合网色鬼国产| 成人一区在线观看| 精品国产在天天线2019| 亚洲国产精品久久久久秋霞影院| 成人h版在线观看| 精品蜜桃在线看| 午夜视频在线观看一区| 色欧美片视频在线观看在线视频| 国产人伦精品一区二区| 久久99日本精品| 在线综合+亚洲+欧美中文字幕| 亚洲欧美日韩国产综合| 懂色av中文字幕一区二区三区 | 欧美性猛交一区二区三区精品| 国产日韩亚洲欧美综合| 精品无人区卡一卡二卡三乱码免费卡| 91官网在线免费观看| 自拍偷拍欧美精品| 成人免费av资源| 欧美激情一区二区三区蜜桃视频| 国内成+人亚洲+欧美+综合在线| 日韩一区二区视频在线观看| 午夜亚洲福利老司机| 在线观看欧美精品| 亚洲影院在线观看| 在线观看日韩毛片| 亚洲国产欧美日韩另类综合| 欧美性xxxxx极品少妇| 亚洲黄色小视频| 欧美无砖专区一中文字| 亚洲风情在线资源站| 欧美亚洲综合久久| 午夜影院久久久| 91精品国产色综合久久不卡电影| 日韩中文字幕91| 精品久久人人做人人爱| 国产伦精品一区二区三区视频青涩 | 日本不卡一二三| 日韩三级视频中文字幕| 国内成+人亚洲+欧美+综合在线 | 中文字幕欧美日本乱码一线二线| 国产成人精品亚洲777人妖| 国产精品丝袜91| 91精品福利视频| 亚洲国产精品久久艾草纯爱| 欧美人狂配大交3d怪物一区| 热久久国产精品| 精品国产污网站| 成人免费视频播放| 亚洲最新视频在线观看| 这里只有精品电影| 国产美女在线观看一区| 综合婷婷亚洲小说| 欧美精品少妇一区二区三区| 久久99国产精品免费网站| 中文一区一区三区高中清不卡| 97久久超碰国产精品电影| 午夜精品久久久久久久久| 2023国产精品自拍| 色先锋资源久久综合| 蜜桃视频一区二区三区| 国产精品美日韩| xvideos.蜜桃一区二区|