重複の可能性:
Cでプログラムの実行時間をミリ秒単位で取得するにはどうすればよいですか?
time()関数を使用した実行時間の計算
試してみclock()
ましtime.h
たが、出力として常に0.0000
秒、つまり0秒が表示されます。マイクロ秒、ミリ秒、またはその他の小さな単位で実行時間を取得する方法はありますか?
重複の可能性:
Cでプログラムの実行時間をミリ秒単位で取得するにはどうすればよいですか?
time()関数を使用した実行時間の計算
試してみclock()
ましtime.h
たが、出力として常に0.0000
秒、つまり0秒が表示されます。マイクロ秒、ミリ秒、またはその他の小さな単位で実行時間を取得する方法はありますか?
シェルでのプログラムの実行の前に「時間」を付けます。つまり、次のようになります。
user@linux:~$ time c_program_name
たとえば、次のように実行します。
sampson-chen@linux:~/src/reviewboard$ time ls -R
次の時間結果が得られます。
real 0m0.046s
user 0m0.008s
sys 0m0.012s
表示形式・精度・冗長性を調整する時間についてはマニュアルを参照してください。
時計は機能するはずです。最初に時計を定義し、最後に値を出力する必要があります。これを確認してください:http ://www.cplusplus.com/reference/clibrary/ctime/clock/
実行は非常に高速で、実行時間は無視できるため、Clock は常に 0.000 を表示します。ハノイの塔や大きな値を持つ NQueesns などの複雑なアルゴリズムで時間をチェックしてみてください。次に、数ミリ秒で実行時間を取得します。ハノイの塔で 15 枚のディスクで試してみたところ、ある程度の価値がありました。