我从文本文件中获取代码行,从中删除空格,然后将它们放入堆栈。
//declarations and finding numLine
Stack memory (numLine);
if(myFile.is_open()){
while(getline(myFile, line1)){
while(line1.find(" ")!=string::npos){
line1.erase(line1.find(" "), 1);
}
cout<<line1;
cout<<"#"<<endl;
memory.push(line1);
}
myFile.close();
}
//code analyzing the lines
当我检查线条是否正确输入以进行调试时,如何打印出以下内容
#OR(i,10,++)
#EGIN
#OR(j,10,++)
#EGAN
#um=sum+i+j;
#ND
END#
所有&#34;#&#34;应该是结束但是它们位于每一行的最开头并替换除最后一行之外的第一个字母。为什么会这样?输出应该是
FOR(i,10,++)#
BEGIN#
FOR(j,10,++)#
BEGAN#
sum=sum+i+j;#
END#
END#
此外,当我删除打印输出的#部分时,所有内容都正确打印