-1

プログラムに乱数を 10 秒間表示させたい。番号を生成できますが、タイマーが機能しません!!

私はこのコードを使用しようとしました:

void MemoryGame::sleep(unsigned int mseconds)
{
    clock_t goal = mseconds + clock();

    while (goal > clock());
}

...
sleep(500);

clock()ここに正しい機能はありませんか?それとも、何か他のものを見落としていますか?

4

2 に答える 2

3

数秒 (10?) スリープしたい場合、POSIX はsleep(unsigned int seconds)関数を提供します。秒単位で指定された間隔でスリープするために、usleep関数はこの機能を提供します。

関数は に常駐して#include <unistd.h>おり、ほとんどの OS では、たとえばヘルプを得るために入力できるはずですman 3 sleep

Windows 側には、Sleep(DWORD ミリ秒)関数があります。

while(t<t1);非常に特別な必要がない限り、忙しい待機はしないでください (例: )。

于 2013-06-24T22:01:29.117 に答える