c++ - 如何在 C++ 中将符号字符串解析为 double 变量?

标签 c++ string

假设我从键盘输入一个类似于 x 的数学函数的字符串。然后我想编写一个函数,它将双变量 x 和字符串作为其参数,然后通过计算字符串的任何特定 x 值来返回值。

例子

字符串mystr;

mystr = "x*x + 3*x";

现在我想写一个函数

双函数(双 x,字符串 str)

这样当被称为

功能(2,神秘)

它应该返回值 10 即 (2*2 + 2*3)

最佳答案

您可以使用类似 this one 的算法将字符串转换为后缀表示法。但是每当遇到 'x' 字符时,将函数参数压入堆栈。

然后,使用类似this one 的算法评估后缀表示以获得实际结果

关于c++ - 如何在 C++ 中将符号字符串解析为 double 变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4956765/

相关文章:

c++ - 将 pyqt 对象传递给 swig 导出的 C++ 代码

c++ - 获取 WinPcap 地址信息时出错

c++ - 如何在同一个主文件中转发声明模板类,如模板函数

c++ - 类模板参数推导不适用于别名模板

string - Scala/Spark 高效的部分字符串匹配

java - 数组和Java字符串错误 : [Ljava. lang.String;@19c42c4b

python - 在 Python 中使用字典替换子字符串

c++ - 是否可以将类作为参数传递给 C++ 中的函数?

从 UUID 对象中的字段构造字符串

python - 计算连续字符