我的主要功能
int main(){
Postfix post;
char size=100;
char infix[size];
string get_input=" ";
cout<<"Input Infix";
cin>>infix;
int size=strlen(infix);
char postfix[size];
post.infix_to_postfix(infix, postfix, size);
cout<<"\nInfix Expression is:"<<" "<<infix;
cout<<"\nPostfix Expression is:"<<" "<<postfix;
cout<<endl;
程序将中缀转换为带有堆栈的后缀表示法。我的问题是,有没有办法保持循环,直到用户不想。 与此相似
int n;
cin>>n;
while (n!=0){
// keep doing whatever
}
答案 0 :(得分:3)
以下两种方法可以做到这一点..
首先是建议使用std::string
它会让你的生活变得轻松。尽量把它包含在你的编码习惯中..
while (std::getline(std::cin, line) && !line.empty())
{
//write your logic here
}
要打破循环,用户必须按enter
第二种方式
std::string str;
while(std::cin>>str)
{
//write your logic here
}
要打破循环,请按ctrl+D
答案 1 :(得分:1)
你可以这样做:
while(cin >> infix){
// your code here....
}
当用户按下“ctrl + Z”
时,程序将停止用户输入