作者chenroseyaks (小盜)
看板C_and_CPP
標題[問題] 怎麼處理Ctrl+D ?
時間Tue Apr 28 13:33:05 2009
小的目前寫一個小遊戲,按Ctrl+D要執行一個新回合,已經困擾我好久
while(fgets( ... ,stdin))
{
...
}
if(feof(stdin))
{
...
}
按一次Ctrl+D後,接下來他就一直跑 feof(stdin) 裡面的東西,有沒有辦法
再讓他回到fgets那一行 ?
謝謝各位
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.66.168.5
1F:推 VictorTom:feof等的不是ctrl+z嗎?_? 04/28 13:35
2F:→ sunneo:可以用訊息來控制程式流程啊 04/28 13:38
3F:→ chenroseyaks:不好意思 我剛學signal,可以再講清楚一點嗎? 04/28 13:46
4F:→ sunneo:我說的不是signal 是單純的變數控制流程 如MSG 04/28 13:50
5F:→ sunneo:或者一個用巨集達成的coroutine也可以 04/28 13:51
6F:→ sunneo:如果你是希望程式可以回到原本的狀態 也許可以考慮PCL 04/28 13:52
7F:→ chenroseyaks:FSbeed不支援include<pcl.h> ... 04/28 14:19
8F:→ chenroseyaks:我剛才用變數,可是來不及輸入新指令就跑到feof去了 04/28 14:23
9F:推 TroyLee:ctrl+d 在 linux 是送eof @@ 04/28 14:26
10F:推 VictorTom:原來linux是送eof, 又學到了一個....Orz 04/28 17:31