硅pu篮球场国家标准:如何让string中的表达式运算?

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/04 07:51:22
如何让string中的表达式运算?
比如有个string字符串,"5+2*7",如何让它们计算出结果?

没有说清楚。
如果仅仅只是运算,那么可以什么也不干,去掉双引号即可。

或者用参阅Cint()函数。字符串转换函数。
还有CType 函数,可以转换成任何类型。int/doub/single等等都可以。

当然下面的方法可以解决任何问题:
先用字符串截取函数,然后用cint()函数
比如“5+2*7”
dim a,b,c as string
a=left(“5+2*7”,1)
b=mid(“5+2*7”,3,1)
c=right(“5+2*7”,1)
a=cint(a)
b=cint(b)
c=cint(c)

或者类似这样写:a=cint(left("5+2*7",1)

或者不用cint(),直接运算也可以。把cint用ctype代替也行,不过后面得加上要转换的类型

换个思路

一个一个转,把char转成int,然后计算,根据ascii码!

............

如果是VB.看看
eval和EXECUTE 怎么用的.

a=eval("5+2*7")

晕倒咧..
.....................

这个我看了一下,直接将字符串"5+2*7"改成int型的也不行,不过还是有办法的

不过有些麻烦,要根据语言中的算术思路

分别截取算术符号左边的字符,放到另一个变量中,等取全后,再算便可,如果有括号的话,就先算括号内的

这种死办法,呵呵,不知有没有更好的办法了

这其实是一个比楼上几位回答都要复杂一些的问题, 即算术表达式的求值. 要人工建一个堆栈, 把字符串中的数字, 运算符等等进行分解, 然后按优先级决定是运算还是入栈和出栈, 等等. 这不是一句话能说得清的, 建议找一本数据结构的书看一下, 一般都有的.