为了账号安全,请及时绑定邮箱和手机立即绑定

如何将"+","-"等字符串转换为相应的运算符?

如何将"+","-"等字符串转换为相应的运算符?

元芳怎么了 2018-12-06 13:44:13
如题 例如最开始学变成时的计算器小程序,可不可以让用户输入“1+1”字符串,就返回2
查看完整描述

8 回答

?
海绵宝宝撒

TA贡献1809条经验 获得超8个赞

动态编译。

查看完整回答
反对 回复 2019-01-21
?
喵喵时光机

TA贡献1846条经验 获得超7个赞

计算器是这么做的,用一个stack分析输入字符串 "1+1",遇到 + 就把 + 之前的 "1"转换成 int,+之后输入的字符也转换成 int,如下:

int m = int.Parse("1");

int n = int.Parse("1");

int sum = m + n;

我只是简单举个例子,实际的词法分析复杂的多.

查看完整回答
反对 回复 2019-01-21
?
慕的地10843

TA贡献1785条经验 获得超8个赞

嗯,问题是如何识别把字符串"+"转变成+呢……
查看完整回答
反对 回复 2019-01-21
?
MYYA

TA贡献1868条经验 获得超4个赞

@wdwwtzy: switch(ch) { case '+' : { return m+n;} case '' : { return m-n;} }
查看完整回答
反对 回复 2019-01-21
?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

字符串输入 然后 把数字转换  接着根据  中间的字符来判断和做 了 啊

查看完整回答
反对 回复 2019-01-21
  • 8 回答
  • 0 关注
  • 376 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信