最終更新日時:
が更新

履歴 編集

macro
<ctime>

CLOCKS_PER_SEC

#define CLOCKS_PER_SEC implementation-defined

概要

clock()関数が返すclock_t値の、1秒あたりの数値。

clock()が返した値をこの値で割ることで、秒単位のプロセッサ時間が得られる。値は処理系定義であり、C標準では1000000 (106) に展開されることが規定されている。

#include <ctime>
#include <iostream>

int main()
{
  std::clock_t start = std::clock();

  // 計測対象の処理
  volatile long sum = 0;
  for (int i = 0; i < 100000000; ++i) {
    sum += i;
  }

  std::clock_t end = std::clock();

  // 経過したプロセッサ時間を秒に変換する
  double sec = static_cast<double>(end - start) / CLOCKS_PER_SEC;
  std::cout << sec << "秒" << std::endl;
}

出力例

0.21秒

関連項目

  • clock: プログラム実行開始からの経過時間を取得する
  • clock_t