Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Отсчет времени


Автор: CWD 28.8.2012, 15:16
Подскажите как реализовать простой отсчет времени в программе без использования функции Sleep.
Например программа на протяжении 10 секунд каждые 2 секунды будет выводить сообщение на экран.

Данный код не совсем рабочий, так как не обнуляется b. Спасибо.
Код

#include <iostream>
#include <conio.h>
#include <time.h>
#include <windows.h>

using namespace std;
int main ()
{
    clock_t a, b;
    a=clock();
    while ((a/CLOCKS_PER_SEC)<10)
    {
    b=clock();
    if((b/CLOCKS_PER_SEC)==2) {cout << "Work" << endl; b=0;}
    }
    system("pause");
}

Автор: bsa 28.8.2012, 15:46
Почему же. b обнуляется. Но через мгновение опять ей присваивается значение clock(). И вообще, тебе нужно использовать не clock(), а time(). Так как clock() возвращает время используемое твоей программой, а оно отличается от реального.

Автор: CWD 28.8.2012, 17:32
bsa, Спасибо.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)