// Copyright 2005 Doi Shigeki // list205.cpp マルチメディア・タイマのテスト //  タイマの状態を調べる // winmm.lib を追加すること #include #include #include #include // mm関数用 main() { int x[100],y[100]; TIMECAPS tc; int i; int x0; timeGetDevCaps( &tc, sizeof(tc) ); printf("タイマの範囲は\n"); printf("%d %d\n", tc.wPeriodMin, tc.wPeriodMax ); printf("timeGetTime()を使って、タイマの刻みを調べます\n"); printf("何かキーを押してください\n"); getch(); // デフォルトの刻み幅のチェック x0 = timeGetTime(); for(i=0;i<100;i++){ while( x0 == timeGetTime() ) ; x0 = x[i] = timeGetTime(); } // 最小の刻み幅のチェック timeBeginPeriod( tc.wPeriodMin ); // タイマの刻みを最小時間にする Sleep( 100 ); // 旧の刻みが終わるまで待つ x0 = timeGetTime(); for(i=0;i<100;i++){ while( x0 == timeGetTime() ) ; x0 = y[i] = timeGetTime(); } timeEndPeriod( tc.wPeriodMin ); // デフォルトに戻す for(i=0;i<100;i++){ printf("%2d %d %d \n", i, x[i], y[i] ); } getch(); }