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

📄 词法分析程序文档.txt

📁 自然语言处理中的词法分析程序
💻 TXT
字号:
                              词法分析程序文档  
                                                               
    
  UpdateData(TRUE);
  int n=0,m,count=0,array2c=0,flag=0;
  LPTSTR array1=new TCHAR[m_read.GetLength()+1];//将输入字符串强行转换为char,并存储在数组
  LPTSTR array2=new TCHAR[m_read.GetLength()+1]; //中
 
  _tcscpy(array1, m_read); 
 int nLength=m_read.GetLength();

    FILE*ptr;                                   //设置一个文件指针
	char word[20];
	while(n<=nLength){
	if((ptr=fopen("wordbase.txt","r"))==NULL)//打开词库文件wordbase。
	 MessageBox("can not be opened!");
	else{  	
		  rewind(ptr);                     //将文件指针置位
		while((!feof(ptr))&&(flag==0))
		{ 	fscanf(ptr,"%s",word);    //将一组词语读到数组word中
		
		    for(m=0;m<=7;m++)             //进行逐字判断
			if(word[m]==array1[m+n])
                  count++;
			if(count==8)               //如果匹配成功则负值给数组array2
			{    
			    array2[array2c]=' ';
				array2c++;
				for(m=0;m<=7;m++)
				array2[array2c+m]=array1[m+n];
			    array2c=array2c+m;
                n=n+m;
				array2[array2c]=' ';
			    array2c++;
				flag=1;
		        count=0;
			}
			else
				count=0;
		}//while
	         flag=0;
			 if(count!=8)                  //如果匹配不成功,则直接输出
			 {  array2[array2c]=array1[n];
				array2[array2c+1]=array1[n+1];
				array2c=array2c+2;
				n=n+2;
				}
	
	}//else
	fclose(ptr);
	}
 
	m_write=array2;

    UpdateData(FALSE);                                 //将最后结果输出到输出对话框中



                
                     
 

⌨️ 快捷键说明

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