使用键盘在XTerm中输入结束

时间:2013-07-28 19:01:46

标签: xterm c++

如何向XTerm终端发出输入结束信号。在我的例子中,我在XTerm控制台中运行一个C ++程序,我想通过按某些键盘按钮组合来向程序发出输入结束信号。(我试过Ctrl + D Ctrl + Z)。我的程序是这样的:

map<int,string>info;
string name;
int age;
cin>>name;
while( **?????????** ){   //Input till EOF , missing logic
    cin>>age;
    info.insert( pair<int,string>(age,name) );
    cin>>name;
}

程序在收到来自终端的输入信号结束时继续。

1 个答案:

答案 0 :(得分:1)

始终需要检查输入 后的输入,即您的程序应如下所示:

while (std::cin >> name >> age) {
    // do something with name and age
}

这将从std::cin读取,直到出现故障。您可以检查是否设置std::cin.eof()以确定是否已到达输入的结尾是错误的原因还是存在其他一些失败,例如,尝试输入不是数字的数字age