如何在按下Enter(回車)按鈕時立即終止此循環? 我曾嘗試getch()!='\ r'(作爲循環條件),但它需要按鍵來開始另一個迭代並擊敗秒錶的目的。如何用enter終止無限循環(回車)
//To Create a stopwatch
#include <iostream>
#include <conio.h>
#include <windows.h>
using namespace std;
int main()
{
int milisecond=0;
int second=0;
int minutes=0;
int hour=0;
cout<<"Press any key to start Timer...."<<endl;
char start=_getch();
for(;;) //This loop needed to terminate as soon as enter is pressed
{
cout<<hour<<":"<<minutes<<":"<<second<<":"<<milisecond<<"\r";
milisecond++;
Sleep(100);
if(milisecond==10)
{
second++;
milisecond=0;
}
if(second==60)
{
minutes++;
second=0;
}
if(minutes==60)
{
hour++;
minutes=0;
}
}
return(0);
}
提供循環的終止條件?
使用ctrl-z或ctrl-c有問題嗎? – Adalcar
ctrl-z只是終止了整個程序,但我需要在循環工作結束後繼續工作。存儲停止時間 –
如果沒有平臺特定的調用,則無法完成。更多在這裏:[從標準輸入中捕獲字符而不等待輸入被按下](http://stackoverflow.com/questions/421860/capture-characters-from-standard-input-without-waiting-for-enter-to-被按下?) – user4581301