📄 ccheck.cpp
字号:
#include "Check.h"
CCheck::CCheck(char sign,int rows)
{
m_sSign=sign;
row=m_row=rows;
switch(m_sSign)
{
case '(':
this->m_eSign=')';
break;
case '[':
this->m_eSign=']';
break;
case '{':
this->m_eSign='}';
}
}
bool CCheck::IsOK(ifstream& infile)
{
char ch;
infile.get(ch);
while(infile)
{
//start
if(ch==this->m_eSign)
return true;
else
{
switch(ch)
{
case '(':
case '{':
case '[':
CCheck* sign;
sign=new CCheck(ch,row);
if(!sign->IsOK(infile))
cout<<"第"<<sign->m_row<<"行"<<sign->m_sSign<<"配对失败"<<endl;
row=sign->row;
break;
case ']':
cout<<"第"<<row<<"行"<<"'['配对失败"<<endl;
break;
case '\n':
row++;
break;
case ')':
case '}':
infile.seekg(-1,ios::cur);
return false;
}
}
//end
infile.get(ch);
}
return false;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -