我正在编写一个程序,它是一个简单的表达式检查器。程序要做的就是检查用户给定的输入是否格式正确。我正在处理三个文件。我将在下面发布每个部分。如果我的编码正确,我的问题在案例一的 main.cpp 中。我是堆栈的新手,不确定我是否正确地对我想要发生的事情进行了编码。以防万一代码是获取一个后跟一个 : 的表达式,并且如果输入'('
然后推送到堆栈并且如果答案是)'
然后获取顶部并比较它们是否是对的。然后输出表达式是否格式正确。谢谢。
这是代码:
主文件
switch (choice){
case 1:
cout << "Current Setting: () " << endl;
cout << "Enter your expression followed by a ; : " << endl;
do {
cin >> answer;
if (answer = '(')
stack.push( '(' );
else
if (answer = ')' )
(stack.top() == '(')
while (answer != ';');
堆栈.h
elemType top(void) const;
// precondition: this stack is not empty
// returns top element in this stack
// transformers
void push(const elemType& item);
// precondition: this stack is not full
// adds item to this stack
void pop(void);
// removes top element from this stack if exist
// remains empty otherwise