2015-12-28 110 views
1

當我想要在Windows PC上的C++程序中終止輸入時,Ctrl + Z用於正常工作。現在我正在Mac上編寫代碼,並使用ctrl + D來模擬EOF信號,但它的表現很奇怪。投入確實停止了,但該計劃似乎不會繼續。當我按下Ctrl + D時,該程序似乎已經全部停止。如果有幫助,我正在寫一個簡單的聯合查找集。如何在Mac上使用ctrl + D在Clion上終止輸入

#include <iostream> 
#include "UnionFindSet.h" 
using namespace std; 

int main() { 

int n; 
int x,y; 
std::cin>> n; 

UnionFindSet UFSet(n); 

while(std::cin>> x >>y) 
{ 
    UFSet.makeUnion(x,y); 
} 

std::cout<< UFSet.getConnectedPartNumber()<<std::endl; 

return 0; 

}

+0

下配置什麼不起作用?看起來對我來說是正確的。 –

+1

該程序只是完全停止,一旦我按下Ctrl + D,輸出語句似乎已被忽略,我的斷點也失敗 –

+0

我有同樣的問題。我在設置中看到Mac上的Cmd + D發送EOF,但是當我這樣做時,我的程序(與OP不同)突然停止,沒有錯誤消息,並且在程序執行之後沒有任何內容。 – Ambidextrous

回答

1

在Mac克利翁映射按Ctrl-d,以命令d 命令d發送EOF。 這可以在首選項 - >鍵盤映射