2012/06/27

C言語 処理時間を計測

clock_tを使った処理時間の計測

#include <stdio.h>
#include <time.h> /* 処理時間計測に必要 */
int main(void){
  /* 宣言 */
  clock_t start, stop;
  /* 計測開始 */
  start = clock();

  /* 処理 */
  int i;
  for(i=0; i<1000; i++){
       printf("%d\n",i);
  }

  /* 計測終了 */
  stop = clock();
  printf("%f sec.\n",(double)(stop-start)/CLOCKS_PER_SEC);

  return 0;
}
実行すると以下のように1000回表示して、そのかかった時間を表示する。windows XPで試しているが、意外と再現性はなく、実行するたびに処理時間はいろいろ変わる。OSの仕事量に影響されているのだろう。それでも目安にはなる。
988
989
990
991
992
993
994
995
996
997
998
999
0.171000 sec.


C言語 ANSI C89 Meadow & MinGW GCC 目次