コードの純粋な C バージョン (MacOS X 10.5.8 - Leopard; MacBook Pro) から得たものは次のとおりです。
#include <time.h>
#include <stdio.h>
int main(void)
{
clock_t start = clock();
clock_t end = clock();
float dif_sec = ((float)end-start)/CLOCKS_PER_SEC;
printf("%s: %f seconds\n", "difference", dif_sec);
printf("%s: %d\n", "CLOCKS_PER_SEC", CLOCKS_PER_SEC);
return(0);
}
これが私がそれをコンパイルして実行した方法であり、得られた結果は次のとおりです。
Osiris JL: gcc -m32 -o xxx-32 xxx.c
Osiris JL: gcc -m64 -o xxx-64 xxx.c
Osiris JL: ./xxx-32
difference: 0.000006 seconds
CLOCKS_PER_SEC: 1000000
Osiris JL: ./xxx-64
difference: 0.000009 seconds
CLOCKS_PER_SEC: 1000000
Osiris JL: ./xxx-64
difference: 0.000003 seconds
CLOCKS_PER_SEC: 1000000
Osiris JL: ./xxx-32
difference: 0.000003 seconds
CLOCKS_PER_SEC: 1000000
Osiris JL:
一見問題ないように見えますが、かなり高速かもしれませんが、問題ありません。これはすばらしい新しいマシンで、2 つのシステム コールを続けて実行するのにそれほど時間はかかりません。