我想寫一個C++(如果它提供了簡單的解決方案,我的問題)程序,其中可以輸入,直到他選擇信號結束輸入通過按這樣的組合按鈕作爲Ctrl + D。我有兩個關於這個問題。C++直到輸入結束通過鍵盤輸入信號
- 哪個鍵組合(一個或多個)被用來/到信號輸入在的Xterm的端? (Ctrl + C或Z不起作用)
當我在
while()
循環中按邏輯代碼進行相應處理時,如果按下組合鍵1時回答爲1,那麼該邏輯代碼應該如何處理?當從終端接收輸入信號的結束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; } //sorted o/p in reverse order map<int,string> :: iterator i; for(i=info.end(); i !=info.begin(); i--) cout<<(*i).second<<endl; cout<<(*i).second<<endl;
}
程序繼續。我使用gcc/g++ (Ubuntu/Linaro 4.7.3-1ubuntu1) 4.7.3
。
插入地圖本來就不大對我的關注。我想要一個像'while(cin >> name){...}'這樣的C++邏輯smthng,只要按下_Key-Combination_就會停止對輸入進行處理。但顯然這是行不通的。所以建議我一些其他的方法。 – KNU
@KunalKrishna上面的代碼可以使用Ctrl + D(linux)或Ctrl + Z 你想要其他的組合鍵嗎? – P0W
@POW我得到了第一部分和關鍵組合的答案。但是我很難實施它。問題是使用一個相同的構造,如果它是字符串,那麼我必須做任何事情,如果它的組合鍵是** exit **。 – KNU