C++之时间操作

有时候需要对时间进行操作,比如当前时间增加几秒,或者减少几秒。下面示例是增加45秒

	time_t t = time(NULL);
	struct tm tm1;
	tm1.tm_year = 2019;
	tm1.tm_mon = 1;
	tm1.tm_mday = 19;
	tm1.tm_hour = 16;
	tm1.tm_min = 15;
	tm1.tm_sec = 15;
	tm1.tm_year -= 1900;
	tm1.tm_mon--;
	tm1.tm_isdst = -1;
	t = mktime(&tm1);
	time_t t2 = t + 45;
	tm *tm2 = localtime(&t2);
    std::cout << "Hello World!\n"; 

time_t类类型如下,可以看出time_t实际上是一个整数,它记录了保存的是从1970年1月1日0时0分0 秒到现在经过的秒数。这里有一点要注意,对time_t数据类型的值来说,它所表示的时间不能晚于2038年1月18日19时14分07秒,否则会发生溢出。为了能够表示更久远的时间,一些编译器厂商引入了64位甚至更长的整形数来保存日历时间。

 其实就是一个长整数

举一个例子:

当前时间如果为2019-01-19 16:16:00

 

猜你喜欢

转载自blog.csdn.net/g0415shenw/article/details/86569228