gpt4 book ai didi

c++ - 检测 CPU 子类型 iPhone

转载 作者:太空宇宙 更新时间:2023-11-04 11:37:33 26 4
gpt4 key购买 nike

我正在尝试获取运行我的应用程序的设备的 cpusubtype。有没有机会只获得 cpusubtype?引用这个:Detect processor ArmV7 vs ArmV7s. Objective-C

sysctlbyname("hw.cpusubtype", &value, &length, NULL, 0);

它会返回像 9,11,12,64 这样的数字吗?如果可以,我可以使用

if hw.cpusubtype(64){
//code for arm64
}

最佳答案

来自线程的代码Detect processor ArmV7 vs ArmV7s. Objective-C你链接到

int32_t value = 0;
size_t length = sizeof(value);
sysctlbyname("hw.cpusubtype", &value, &length, NULL, 0);

将 CPU 子类型放入 value变量,因此您可以将其与<mach/machine.h> 中定义的子类型,例如:

if (value == CPU_SUBTYPE_ARM_V7) {
// ...
}

但是如果您的目的是检查您的应用程序是在 32 位还是 64 位上运行处理器那么你必须得到“cputype”,而不是“cpusubtype”,正如所展示的这里https://stackoverflow.com/a/20105134/1187415 :

sysctlbyname("hw.cputype", &value, &length, NULL, 0);

if (value == CPU_TYPE_ARM64) {
// ARM 64-bit CPU
} else if (value == CPU_TYPE_ARM) {
// ARM 32-bit CPU
} else {
// Something else.
}

关于c++ - 检测 CPU 子类型 iPhone,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22593419/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com