回答編集履歴
1
誤情報の訂正
test
CHANGED
@@ -7,3 +7,29 @@
|
|
7
7
|
|
8
8
|
|
9
9
|
Windowsはscanfを呼び出したプログラム自身が結構CPUを使っちゃってるようですね。
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
追記:
|
14
|
+
|
15
|
+
間違いでした。
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
Linux glibc 2.18 以降のclockはは、 精度を向上させるため、 clock_gettime(2) (の CLOCK_PROCESS_CPUTIME_ID クロック) を使って実装されていいます。以前はtimes()を使ってましたがどっちにしても消費したCPU時間をはかっています。
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
一方Winowsのclockはwall-clock timeを返す関数(時刻がわかるので差し引きすると経過時間が出る)で「ISO Cと互換性がない」と書かれています。
|
24
|
+
|
25
|
+
https://msdn.microsoft.com/en-us/library/4e2ess30.aspx
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
そもそも違うものを計っていたと言うことです。
|
30
|
+
|
31
|
+
|
32
|
+
|
33
|
+
おそらくは、Win321piのGetProcessTimesを使うとかするぼが正解。
|
34
|
+
|
35
|
+
C++プログラミングがしたいのならすでに他の方が答えているstd::chrono::high_resolution_clock::now()関数が正解なのでしょう。
|