1

システム時刻を取得し、この時刻を使用して ntp に相当するものを出力する C プログラムを作成したいと考えています。

次の ntp 時間の秒の部分が正しいと言っているのは正しいですか?

long int ntp.seconds = time(NULL) + 2208988800;

分数部分の計算方法を教えてください。

4

1 に答える 1

1

追加する小数部分は明らかに 0ps です ... ;-)

そのため、分数の問題は、システム クロックがどれだけ正確かということに帰着することができます。

gettimeofday()マイクロ秒を取得します。ナノ秒を取得できますclock_gettime()

とにかく、分数の 32 ビット幅の値が許容する理論的に可能な解像度に到達するとは思えません (少なくとも標準的な PC では)。

于 2011-10-17T20:32:54.153 に答える