2.实现calcexp.cpp中的两数:
Status EvaluateExpression(const char* s, int &reasult)
此两数完成对表达式5进行求值(注:5已经后缀了结束符‘#),计
算结果由输出参数reasult传出;
3.对表达式中的操作数、操作符(统称为单词)解析过程已经由框架提供,
其接口在util.h给出,解析表达式过程如下:
a)首先调用GetExpHandle将表达式字符串作为参数传入,框架做
预处理,并将处理结果由出参handle传出,此时handle作为句
柄,调用者不要对其更改,在调用GetExpNextword时原样传入;
b)循环调用GetExpNextword()获取表达式中的单词,直至两数返
回eitEND。
C)对表达式的单词解析示例如下:
charsr1="10+200*3000";
EXP SCAN HANDLE handle;
int n;
char ch:
EXP ITEM TYPE eType;
GetExpHandle(s, handle) ;
do
{
eType = GetExpNextword(handle, n, ch) ;
if (eType == eit0PND)
{
printf("获得操作数:%d",n);
7
{
elseif(eType==eitoPTR)
printf("获得操作符:%c",ch);
}
7
while (eType != eitEND);
上述代码运行后品示
荻得操作数:10
获得操作符:
获得操作数:
200
获得操作符:
荻得操作数:3000
4.求解过程需要使用栈,请设计并实现栈的操作。
【演示效果】
EXP_SCAN_HANDLE handle;我还是不知道这个什么意思呀
是广科的学生嘛