可能重复:
确定我的处理器的字长
今天是一个面试题。但我不知道...
我认为面试官的意思是cpu的字大小。
我找到这样的答案:
int cpu_bits(void *dummy1, void *dummy2)
{
long offset = (long)&dummy2 - (long)&dummy1;
int ret = 0;
if (8 == offset)
ret = 64;
else if (4 == offset)
ret = 32;
else if (2 == offset)
ret = 16;
else if (1 == offset)
ret = 8;
else
ret = -1;
return ret;
}
int main()
{
printf("%d\n", cpu_bits(NULL, NULL));
return 0;
}
结果似乎是对的,你这么认为吗?