我目前正在更新一些代码,我遇到了一个地方,代码假设time_t
变量的大小与signed long
. 这段代码可以在我们之前的平台上运行(显然在 Coldfire 上确实如此),但我们正在转向一个新平台。
现在我知道我们不应该对time_t
变量的大小做出假设,因为这没有很好的定义。但我现在真的不想重写所有基于这个假设工作的代码行。
理想情况下,我想做类似的事情:
#if sizeof(time_t) != sizeof(LONG)
#error size assertion failed
#endif
一次就可以了。我知道sizeof()
不能在这样的条件预处理器中使用它,所以这是不可能的。
所以我想知道,有什么方法可以知道 atime_t
将占用的字节数,以便可以在预处理条件中使用它?