c++ - 将字符串计算为 C++ 中的表达式

标签 c++

在我的项目中,我需要将用户输入的表达式作为字符串,然后显示表达式的结果。我的输入如下

char address[100] = {NULL};
fgets(address, 100, stdin); //take the expression as input here

假设用户将表达式写为

address = " 1+5+9" . 

我需要做的是显示表达式的结果。我可以通过分离每个数字然后进行计算来做到这一点。但我只是想知道有没有更好的方法可以做到这一点?

最佳答案

听起来您正在寻找与 JavaScript 中的 eval 等价的 C++。不幸的是,C++ 没有。手动解析表达式是您能做的最好的事情。

如果您有权访问The C++ Programming Language本书第 6 章介绍了如何编写一个简单的计算器程序来解决您遇到的相同问题。

关于c++ - 将字符串计算为 C++ 中的表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11101429/

相关文章:

c++ - C++-派生类构造函数的行为

c++ - dispatch_async 仅在 iOS 设备上崩溃,为什么?

c++ - boost:如何监视互斥体的状态并在死锁时强制释放

c++ - OpenCV 中用于不失真图像的重映射功能如何工作?

c++ - 在 C++ 代码中获取虚拟值而不是预期值

c++ - 如何在模板函数中创建类型的实例? (C++)

c++ - 一个离开析构函数的有效异常案例

c++ - 如何使用 for 循环多次提示用户输入不同的文件名?

java - 在 android ndk 上运行 pjsip 示例 pjsua 时出错

c++ - 我怎样才能明智地重载放置运算符 new?