设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 编程开发 >> 其他开发语言 >> 关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器
精品推荐
其他开发语言点击TOP10
·数字小键盘指法练习
·用C语言编通讯录程序(初学者级别的)
·Modem 常用AT指令集
·单片机模拟I2C总线及24C02(I2C EEPROM)读写实例(源代码)
·C++经典电子书下载
·Thinking in C++ 简体中文第二版
·debug和release的区别
·error LNK2001: unresolved external symbol __ftol2 错误解决
·C库函数手册
·一个简单的C语言编译器
编程开发点击TOP10
·数字小键盘指法练习
·ASP.NET 程序中常用的三十三种代码
·用C语言编通讯录程序(初学者级别的)
·我写的Java学生成绩管理系统源代码
·CHK文件恢复工具
·Modem 常用AT指令集
·java笔试题
·异常java.sql.SQLException: Io exception:The Network Adapter could not establish connection
·单片机模拟I2C总线及24C02(I2C EEPROM)读写实例(源代码)
·C++经典电子书下载
精选专题

关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器

作者: 来源:网络文章 时间:2005-12-17 21:02:18

关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器(2)   strcpy(prog,Prog);
}

CMake::~CMake()
{
 
}


CToken CMake::get_token(void)
{
 register char *temp;
 CToken m_token;
    m_token.token_type=0;
 m_token.tok=0;
 temp=m_token.token;
 if(*prog=='\0')
 {
  *m_token.token='\0';
  m_token.tok=0;
  m_token.token_type=FINISHED;
  return m_token;
 }
 while(iswhite(*prog)) ++prog;
   
 if(*prog=='\r') // 如果是换行符
 {
  m_token.token[0]=*prog;
  m_token.token[1]='\0';
  m_token.token_type=ENTER;
  prog++;
  return m_token;
 }
 if( isdelim(*prog)) // 如果找得到运算符号标记
 {
    *m_token.token=*prog;
    *(m_token.token+1)='\0';
    m_token.tok=0;
    m_token.token_type=DELIMITER;
    prog++;
    return m_token;            // 譬如 token[0]='+' token[1]='\0';
 }

 if(*prog=='"')   // 如果是字符串
 {
  prog++;
  int i=0;
  while(*prog!='"' && *prog!='\r')
  {
   m_token.token[i]=*prog;
   i++;
   prog++;
  }
  prog++;
  m_token.token[i]='\0';
  m_token.token_type=QUOTE;
  return m_token;
 }

 if( isdigit(*prog)) // 如果找到数字标记
 {
  int i=0;
  while(isdigit(*prog) && i<TOKEN_MAX) // 小于token最长为80个字符
  {
   m_token.token[i]=*prog;
   i++;
   prog++;
  }
  m_token.token[i]='\0';
  m_token.token_type=NUMBER;
  return m_token;

1.关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器(1)
2.关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器(2)
3.关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器(3)
4.关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器(4)
5.关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器(5)
6.关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器(6)
7.关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器(7)
8.关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器(8)
9.关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器(9)
10.关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器(10)
11.关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器(11)
12.关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器(12)
共12页 9 7 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [128 :>

关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器 相关文章:
关于Basic程序解释器及编译原理的简单化(2)---C++封装好的Basic解释器 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com