身骑白马入华山 发表于 2017-10-31 10:58:49

打算做一个支持符号的四则运算程序。

请问用什么函数检查用户输入?或者说在C++primer plus第几页?

BngThea 发表于 2017-10-31 11:09:30

把你的目的讲述清楚一些,如果只是检查字符+-*/,只要掌握cin的输入方式即可
如果要实现四则运算的重新设计,那么你需要学习函数重载,尤其是运算符重载

身骑白马入华山 发表于 2017-10-31 11:34:06

BngThea 发表于 2017-10-31 11:09
把你的目的讲述清楚一些,如果只是检查字符+-*/,只要掌握cin的输入方式即可
如果要实现四则运算的重新设 ...

可以实现有括号的计算器。。而且不会因为用户作而数据溢出导致bug。。。

砚堂_ 发表于 2017-11-1 20:30:34

识别符号可以用 swich-case语句
我觉得“输入表达式求值”有点难啊,要考虑优先级,要用到栈。

身骑白马入华山 发表于 2017-11-1 21:36:24

砚堂_ 发表于 2017-11-1 20:30
识别符号可以用 swich-case语句
我觉得“输入表达式求值”有点难啊,要考虑优先级,要用到栈。

请问分别需要用到哪些C艹特性{:10_266:}

身骑白马入华山 发表于 2017-11-1 23:41:00

砚堂_ 发表于 2017-11-1 20:30
识别符号可以用 swich-case语句
我觉得“输入表达式求值”有点难啊,要考虑优先级,要用到栈。

谢谢。

身骑白马入华山 发表于 2017-11-1 23:41:51

BngThea 发表于 2017-10-31 11:09
把你的目的讲述清楚一些,如果只是检查字符+-*/,只要掌握cin的输入方式即可
如果要实现四则运算的重新设 ...

谢谢!另外一个回答者一个最佳没有,所以给了他。。

砚堂_ 发表于 2017-11-2 09:49:58

身骑白马入华山 发表于 2017-11-1 21:36
请问分别需要用到哪些C艹特性

优先级是数学里面规定的,与c++无关。保存优先级关系要用到数组。
将输入的符号与运算符匹配用swich-case语句
将中缀表达式转化为前缀表达式求值,要用到栈,这个是数据结构里面讲的
你可以看看这个
http://blog.csdn.net/antineutrino/article/details/6763722

身骑白马入华山 发表于 2017-11-5 14:22:12

砚堂_ 发表于 2017-11-2 09:49
优先级是数学里面规定的,与c++无关。保存优先级关系要用到数组。
将输入的符号与运算符匹配用swich-cas ...

非常感谢!
页: [1]
查看完整版本: 打算做一个支持符号的四则运算程序。