objective-c - 预处理器时间戳

标签 objective-c c cocoa xcode

是否可以通过预处理器宏生成嵌入式 Unix 时间戳?

例如:#define VERSION_EXPIRE __TIMESTAMP__

这样做的原因是,我有测试版,我想在编译时生成一个过期时间戳(在特殊的构建配置中)。

最佳答案

我是这样解决的:

#define VERSION_TIMESTAMP __DATE__" "__TIME__"\x0"

在其他类(class)

+ (NSDate *)versionExpiresInDays:(NSUInteger)days {
    NSString *dateString = [NSString stringWithUTF8String:VERSION_TIMESTAMP];   
    NSLocale *enLocale = [[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease];
    NSDate *compiledOn = [NSDate dateWithNaturalLanguageString:dateString locale:enLocale];

    return [compiledOn dateByAddingTimeInterval:days*24*60*60];
}

关于objective-c - 预处理器时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3905644/

相关文章:

ios - 如何使用视觉格式语言设置动态高度

c - 如何在 C 中创建一个在父进程死亡后运行的进程?

c - 在 C 中操作值

c - 访问 C 库的最 pythonic 方式是什么——例如,OpenSSL?

macos - 检测将窗口从一个显示器移动到另一个显示器

objective-c - 从ViewController(AppDelegate)强制刷新NSView

objective-c - iPhone 号码文本到完整的货币等式

objective-c - 是否可以在 Swift 中创建可选文字?

objective-c - 为什么我的图表如此不稳定?

objective-c - 哪些 Swift 类型可以在 Objective-C 中表示?