1

バックグラウンドで何かが常に更新されている間に、ユーザーがリアルタイム入力を行う方法はありますか? 基本的には、ユーザー入力を求めたときにプログラムが停止しないようにします。

たとえば、数値が常に計算されている間、ユーザー入力を求めます。

4

1 に答える 1

-1

私が見ているように、この問題には2つの方法があります。

1つは、xeboがコメントしたように、マルチスレッドを使用することです。1 つのスレッドを数値などの定数計算に使用し、別のスレッドを使用してユーザー入力を絶えず検索します。

2 番目の方法はより単純で、ユーザー入力を取得するために cin( std 名前空間から) を使用している場合にのみ機能します。次のように、計算ループ内に別の while ループをネストできます。

#include <iostream>
using namespace std;

int main()
{
    int YourNumber;
    char input;         //the object you wish to store the input value in.
    while(condition)    //Whatever your condition is
    {
        while(cin>>input)
        //This while says that the statement after (cin»input)
        //is to be repealed as long as the input operation 
        //cin>>input succeeds, and
        //cin»input will succeed as long as there are characters to read 
        //on the standard input.
        {
             //Update process your input here.
        }
        //D what the normal calculations you would perform with your number.
    }
return 0;
}

お役に立てれば。

于 2013-09-29T06:17:25.200 に答える