2

何らかの理由で difftime は整数のみを返します。私のコードはとてもシンプルです。

#include <time.h>

int main()
{
    time_t test = time(NULL);
    while (1)
    {
        std::cout << difftime(time(NULL), test) << std::endl;
    }
}

私の出力は次のようになります

0...
1...
2...
3...

difftime は double を返すはずではありませんか?

4

3 に答える 3

1

これは time() や difftime() とは関係ありません。これは純粋に c++ の cout です。

ここを参照してください: cout を使用して完全な精度で double 値を出力するにはどうすればよいですか?

于 2015-11-04T16:20:46.300 に答える
-1
int main()
{
    time_t o_test, f_test;
    time(&o_test);
    while (1)
    {
        time(&f_test);
        std::cout << difftime(f_test, o_test) << std::endl;
    }
}
于 2015-07-04T02:06:18.657 に答える