Я ожидал, что следующий код должен печатать разные метки времени t1 и t2, однако результат показывает, что t1 и t2 совпадают. Где я совершил ошибку?Как правильно использовать ctime() для печати разных временных меток
#include<iostream>
#include<ctime>
using namespace std;
int main()
{
time_t t1 = time(NULL);
cout << "time now " << ctime(&t1) << endl;
time_t t2 = t1 + 10000.0;
cout << "time now " << ctime(&t1) << endl << " time later " << ctime(&t2) <<endl;
}
Результат:
time now Thu Apr 28 20:37:03 2016
time now Thu Apr 28 20:37:03 2016
time later Thu Apr 28 20:37:03 2016
PS: На основе замечательных ответов ниже, проблема должна быть связана и как CTime() функция работает и составители порядка оценивать аргументы COUT. Для последнего, пожалуйста, обратитесь к http://stackoverflow.com/questions/12960241/explain-the-order-of-evalution-in-printf для примера – daydayup