检查处理器是否为 arm64

Spi*_*oxa 1 ios arm64

是否可以编写一个简单的 Objective-C IF 语句来检查 iOS 设备中的处理器是否为 arm64?

需要这样做的原因是一些为 32 位架构编写的 Core Audio 代码在 arm64 时崩溃了。似乎用 Int32 替换 Int16 引用可能会解决它,但我需要一个 IF 语句来确定处理器类型以确定要使用的处理器类型。

它可以通过查找特定的设备类型来完成,但处理器类型检查似乎是一种更优雅且面向未来的解决方案。

tba*_*nes 5

没有官方方法可以获取此信息,但是您可以在运行时比较指针的大小以获取此信息:

if (sizeof(void*) == 4) {
    NSLog(@"32-bit app");
} else if (sizeof(void*) == 8) {
    NSLog(@"64-bit app");
}
Run Code Online (Sandbox Code Playgroud)