在 C++ 中打印系统时间
C++ 标准库未提供合适的日期类型。C++ 从 C 继承了用于日期和时间操作的结构和函数。要访问与日期和时间相关的函数和结构,您需要在 C++ 程序中包含 <<ctime> 标头文件。
有四种与时间相关的类型:clock_t、time_t、size_t 和 tm。clock_t、size_t 和 time_t 类型能够以某种整数形式表示系统时间和日期。
结构类型 tm 以 C 结构的形式保存日期和时间,其包含以下元素 -
struct tm { int tm_sec; // seconds of minutes from 0 to 61 int tm_min; // minutes of hour from 0 to 59 int tm_hour; // hours of day from 0 to 24 int tm_mday; // day of month from 1 to 31 int tm_mon; // month of year from 0 to 11 int tm_year; // year since 1900 int tm_wday; // days since sunday int tm_yday; // days since January 1st int tm_isdst; // hours of daylight savings time }
假设您想检索当前系统日期和时间,作为本地时间或协调世界时间 (UTC)。以下是实现上述目的的示例 –
示例
#include <iostream> #include <ctime> using namespace std; int main() { // current date/time based on current system time_t now = time(0); char* dt = ctime(&now); // convert now to string form cout << "The local date and time is: " << dt << endl; // convert now to tm struct for UTC tm *gmtm = gmtime(&now); dt = asctime(gmtm); cout << "The UTC date and time is:"<< dt << endl; }
输出
The local date and time is: Fri Mar 22 13:07:39 2019 The UTC date and time is:Fri Mar 22 07:37:39 2019
广告