比较多平台上的2 struct tm

Red*_*nda 2 c linux windows linux-kernel

可以说我有两个

struct tm
Run Code Online (Sandbox Code Playgroud)

我需要在Linux,Linux内核和Windows中对它们进行比较.进行跨平台检查的最佳方法是什么?

通过"比较",我的意思是找出哪个日期更大.例如 - 我此时获取日期并将其与某个帐户过期的日期进行比较.

use*_*733 10

您可以将它们转换mktimetime_t,然后计算差异difftime:

time_t t1 = mktime(tm1);
time_t t2 = mktime(tm2);
double diffSecs = difftime(t1, t2); // If positive, then tm1 > tm2
Run Code Online (Sandbox Code Playgroud)