我的程序使用字符串流将数据存储到字符串向量中,该向量用于将值传递给打印函数。用户将从标准输入中输入 5 项,例如:summary DAL 2 5 54。然后按下回车键,我将这 5 项中的每一项都传递给摘要函数。
string line;
getline(cin, line);
stringstream ss(line);
string tmp;
vector<string> cmd;
int DOWN;
int TOGO;
int YDLINE;
ss >> tmp; //BEGIN INPUT
while(ss)
{
cmd.push_back(tmp); //STORE TO VECTOR OF STRINGS
ss >> tmp;
}
ss.clear();
ss.str( cmd[2] );
ss >> DOWN; //CONVERT STRING TO INT
ss.clear();
ss.str( cmd[3] );
ss >> TOGO; //STRING TO INT
ss.clear();
ss.str( cmd[4] );
ss >> YDLINE; //STRING TO INT
summary(cmd[0], cmd[1], DOWN, TOGO, YDLINE, TeamData); //PASS VALUES TO PRINT FUNCTION
我试图从打印功能返回,以便程序在打印后继续输入,只要用户输入数据。我正在努力创建一个适当的循环。唯一没有使我的程序崩溃的循环是如果我做了类似以下的事情,但它所做的只是导致无限打印循环。
while(ss >> tmp)
{
while(ss)
{
cmd.push_back(tmp);
ss >> tmp;
}
. . .
. . .
summary(cmd[0], cmd[1], DOWN, TOGO, YDLINE, TeamData); //PASS VALUES TO PRINT FUNCTION
}
任何建议将不胜感激