您的位置:首页 > 编程语言 > C语言/C++

c++ 判断32位/64位机器

2013-04-24 09:46 351 查看
  某些人会考虑用long类型的长度来作为判断的标准,这样不是一个好的答案。我认为比较好的答案是利用虚拟地址的位数

int main()
{

#ifdef __x86_64__
assert(sizeof(char *) == 8);
#endif
return 0;
}


然后见到别人提了一个这样的问题:如果是64位的机器装了32位的系统,你怎么判断呢?

A:

1. 直接读取/proc/cpuinfo

2. 更底层点的做法:使用汇编指令cpuid
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: