1
我寫了一個簡單的計時器。通過按「s」(不按回車提交),計時器(for-loop)將開始。這是一個無止境的循環。我想在用戶按下「s」時立即停止它,就像我啓動它的方式一樣。一旦按下「s」(不按回車提交),循環應該停止。怎麼做?通過實時按下某個鍵來停止循環
#include <iostream>
#include <stdlib.h>
#include <conio.h>
using namespace std;
int main()
{
char ch;
int m=0,h=0;
if ((ch = _getch()) == 's')
for (int i=0;;i++)
{
cout << "h m s" << endl;
cout << h << " " << m << " " << i;
system("CLS");
if (i==60) {i=0;m+=1;}
if (m==60) {m=0;h+=1;}
if (h==24) {h=0;}
}
return 0;
}
我不明白你的意思。我是業餘的。我不想用cin >> s;所以用戶按下一個鍵,然後使用if命令來檢查它是否爲「s」,然後中斷循環。它不是實時的,它停止按下一個字符的屏幕,然後它會繼續,我需要一些實時影響的東西。 – Nofuzy
@Stranger如果你啓動不同的線程來監聽輸入,它不會「停止」屏幕。閱讀主題。 –
我已更新第一篇文章。希望它現在更清楚:) – Nofuzy