2010-03-19 66 views
0

我有一个程序可以处理粘贴到控制台的数据。例如,当程序运行和我贴C++输入流

delete 54545 
add 4324 

程序调用删除与参数54545的功能,但等到4324后进入调用第二功能。我不知道如何在没有输入的情况下调用它。

示例

第一行是应该调用多少个函数。我这个贴在控制台

3 
delete 4324324 
add 324 
add 4324 

的代码就是这样

... 
int count; 
string func, parameter; 
cin >> count; 
for (int i=1; i<=count;i++) { 
    cin >> func; 
    switch(func) { 
     case "add": cin >> parameter; add(parameter); break; 
     case "delete": cin >> parameter; delete(parameter); break; 
    } 
} 
... 

所有函数被调用,但最后一个是不是... 在这个例子中最后的功能添加和程序等待按后输入

case "add": cin >> parameter 

调用函数。

+0

它闻起来像你需要'ncurses'和/或'getch(e)'。 – pajton 2010-03-19 01:11:07

回答

1

如果您需要处理由用户提供的输入,并且不想等到用户按下输入时解析,则无法使用标准流。

Insead getch()功能可能适用于您,请注意这不是标准的C/C++。