问一个词法分析的小问题

zhifangtu 2005-09-22 09:57:15

int a=1,b=2,c=4;
string s1 = "max(a,b)";
string s2 = "max(max(a,b),c)";

max(..)是已经定义好的一个函数(max是为方便说明问题而举的一个例子),有容易点的方法或者思路可以实现下面的效果吗:

int r1 = s11;// s11 为s1字符串max(a,b)计算出的结果,应该为2
int r2 = s22;// s22 为s1字符串max(max(a,b),c)计算出的结果,应该为4

本人对编译原理,词法分析等了解不多,希望大家给个思路(希望不需要自己写解析器哦)即可.谢谢!
...全文
185 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
K 2005-09-23
  • 打赏
  • 举报
回复
这样很难!
你这样写,string s1="int a=1,b=2,c=4;max(a,b);";
会容易解析一点
XBox360 2005-09-23
  • 打赏
  • 举报
回复
“希望不需要自己写解析器哦”
但是我觉得只有这样做
xiaocai0001 2005-09-23
  • 打赏
  • 举报
回复
very very difficult to achieve your target
domestic007 2005-09-23
  • 打赏
  • 举报
回复
辞职 郁闷 解脱 灌水中~~~~~~~~~~
icansaymyabc 2005-09-23
  • 打赏
  • 举报
回复
为应用程序添加脚本支持
http://vckbase.com/document/viewdoc/?id=577
icansaymyabc 2005-09-23
  • 打赏
  • 举报
回复
使用脚本控件的文章:
http://www.contnew.com/tech/develop/vb/2004/11/23_766506_01.html
icansaymyabc 2005-09-23
  • 打赏
  • 举报
回复
不需要自己写解析器的话就用 vbs 或 js 控件吧。
windows系统提供了脚本控件的。你把脚本支持加入到你的程序中来,你的程序就能像网页那样使用脚本了。

Chrisma 2005-09-22
  • 打赏
  • 举报
回复
到maguangzhi.bokee.com去下载讲义吧
weigangli 2005-09-22
  • 打赏
  • 举报
回复
不是很懂你的意思,因为我不知道什么叫词法分析,刚入大二,还没学到,呵呵.不过这种字符串分析简单点可以用递归,不过效率不高.对效率有严格要求的话,用一颗二叉树会比较好.类似于表达试的分析,不过要简单得多.

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧