加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

用于日期的Xcode预处理器宏

发布时间:2020-12-14 17:33:32 所属栏目:百科 来源:网络整理
导读:我想将过期日期“硬编码”到我的测试版代码中.现在我手动计算一个unix日期并将其与当前日期时间进行比较: if([[NSDate date] timeIntervalSince1970]1422748800) mustHalt = TRUE; 我想用一种方法用一个宏来替换1422748800,该宏在将来的90天内生成相同数量
我想将过期日期“硬编码”到我的测试版代码中.现在我手动计算一个unix日期并将其与当前日期时间进行比较:

if([[NSDate date] timeIntervalSince1970]>1422748800) mustHalt = TRUE;

我想用一种方法用一个宏来替换1422748800,该宏在将来的90天内生成相同数量的编译时间.

有什么建议?

解决方法

预定义的宏__DATE__是您所需要的. Here is a SO question与此相关.但也许你想使用这样的代码:

const int daysToExpire = 14;

    NSString *compileDate = [NSString stringWithUTF8String:__DATE__];
    NSDateFormatter *df = [[NSDateFormatter alloc] init];
    [df setDateFormat:@"MMM d yyyy"];
    NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
    [df setLocale:usLocale];
    NSDate *expireDate = [df dateFromString:compileDate];

    bool isExpired = ([[NSDate date] compare:expireDate] == NSOrderedDescending); // decide for it

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读