2014-10-17 78 views
-2

在C++:如何顯示系統當前時間+ 3分鐘?

  • 我怎麼能顯示系統當前時間(僅適用於不帶日期時間)?

  • 如何顯示當前時間+ 3分鐘?

  • 我可以使用cout嗎?

要使用哪些庫或函數?

+2

檢查['std :: chrono :: system_clock :: now()'](http://en.cppreference.com/w/cpp/chrono/system_clock/now) – 2014-10-17 15:33:57

+3

我使用了精靈魔法。你的旅費可能會改變。 – 2014-10-17 15:38:43

+2

這看起來像功課 – 2014-10-17 15:41:02

回答

1

你可以試試這個例子(使用C++ 11鐺3.6):

#include <iostream> 
#include <iomanip> 
#include <ctime> 
#include <chrono> 

int main() 
{ 
    std::chrono::system_clock::time_point now = std::chrono::system_clock::now(); 
    std::time_t now_c = std::chrono::system_clock::to_time_t(now - std::chrono::hours(24)); 
    std::cout << std::put_time(std::localtime(&now_c), "%T") << std::endl; 
    std::time_t later_c = std::chrono::system_clock::to_time_t(now - std::chrono::hours(24) + std::chrono::minutes(3)); 
    std::cout << std::put_time(std::localtime(&later_c), "%T") << std::endl; 

    return 0; 
} 

只使用std::chrono

+2

'std :: put_time'得到很好的支持,[GCC 4.9沒有它](http://stackoverflow.com/a/14137287/560648),而且鏗鏘聲3.5.0也不支持。所以,除非你使用,什麼,MSVS(?)這不會太有用。 – 2014-10-17 15:48:18

+1

@LightnessRacesinOrbit嗯,至少它在[本參考](http://en.cppreference.com/w/cpp/io/manip/put_time)中被描述爲標準函數。 – 2014-10-17 15:50:44

+2

@πάνταῥεῖ是的,它是一個C++ 11特徵。我只是說它得不到支持,我堅持這一聲明。 cppreference.com對於標準的字母是準確的,我認爲這很有幫助,如果你想以cppreference.com貢獻者的身份開始職業生涯......但對於所有其他C++的使用而言,並不是那麼重要。 – 2014-10-17 15:51:51