Прототип функции clock:
clock_t clock( void );
Заголовочный файл
| Название | Язык |
|---|---|
| time.h | С |
| ctime | С++ |
Описание:
Возвращает количество временных тактов, прошедших с начала запуска программы. С помощью макроса CLOCKS_PER_SEC функция получает количество пройденных тактов за 1 секунду. Таким образом, зная сколько выполняется тактов в секунду, зная время запуска программы можно посчитать время работы всей программы или отдельного её фрагмента, что и делает данная функция.
Параметры:
Как видно из её прототипа, функция не принимает параметров.
Возвращаемое значение
Число тактов прошедшее с момента запуска программы. В случае ошибки, функция возвращает значение -1.
Возвращаемое значение функции clock имеет тип данных clock_t, который определен в <ctime>. clock_t способный представлять временные такты, а также поддерживает арифметические операции.
Пример: исходный код программы
//пример использования функции clock
#include <iostream> // для оператора cout
#include <ctime> // для функции clock
#include <cmath> // для функции sqrt
int frequencyPrimes (int n) // функция поиска простых чисел
{
int freq = n-1;
for (int i = 2; i <= n; ++i)
for (int j = sqrt( (float)i ); j > 1; --j)
if (i % j == 0)
{
--freq;
break;
}
return freq;
}
int main ()
{
std::cout << "Вычисление..." << std::endl;
int f = frequencyPrimes (100000); // ищем простые числа в интервале от 2 до 100000
int t = clock(); // получаем количество тиков времени
std::cout << "Количество простых чисел меньших 100 000 = "
<< f << std::endl;
std::cout << "Для вычисления понадобилось "
<< t << " тиков времени или "
<< ((float)t) / CLOCKS_PER_SEC << " секунд.n";
return 0;
}
Пример работы программы
Количество простых чисел меньших 100 000 = 9592
Для вычисления понадобилось 170000 тиков времени или 0.17 секунд.