//这是我的用STL实现的检查字符串中的几个符号是否匹配的代码
#include
#include
#include
using namespace std;
void main()
{
stack
stack
stack
char s[30]="ABCD{()PPPL<>()}";
char *p=&s[0];
while( (*p)!='\0' ) //遍历字符串s
{
switch(*p)
{
case '{':
mystackda.push('{');
break;
case '}':
if (mystackda.empty())
{
goto over;
}
mystackda.pop();
break;
case '<':
mystackjian.push('<');
break;
case '>':
if (mystackjian.empty())
{
goto over;
}
mystackjian.pop();
break;
case '(':
mystackxiao.push('(');
break;
case ')':
if (mystackxiao.empty())
{
goto over;
}
mystackxiao.pop();
break;
}
p++;
}
if ( mystackda.empty() && mystackjian.empty() && mystackxiao.empty() )
{
cout<<"\n字符匹配"< } else { over: cout<<"\n字符不匹配"< } system("pause"); } //【还待优化】 //【望采纳--现在急需分】