。。。。。。。。。。。。。。。。。。。。。。。c++ 判断当前系统是32 还是64位的方法

woaini8t 2011-09-15 05:20:08
有没有正规一点的api呢,网上的一些通过判断系统目录的方法,或者判断注册表的方法比较麻烦可能不同操作系统的注册表都不一样呢。

...全文
243 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2011-09-15
  • 打赏
  • 举报
回复
sizeof(char *)
woaini8t 2011-09-15
  • 打赏
  • 举报
回复
搞定了 谢谢各位
nice_cxf 2011-09-15
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 studycbc 的回复:]
32位 int 和 long 一样,64位 long对 int 大,不用库函数

扎实点看书
[/Quote]

32位 int 4,long 4,64位int 8,long 8还是相等
用这个只能判断你应用程序的位数,并不能判断操作系统和CPU的位数,
chengwenyao18 2011-09-15
  • 打赏
  • 举报
回复

#include <windows.h>
#include <stdio.h>

void main()
{
SYSTEM_INFO siSysInfo;

// Copy the hardware information to the SYSTEM_INFO structure.
GetSystemInfo(&siSysInfo);

// Display the contents of the SYSTEM_INFO structure.
printf("Hardware information: \n");
printf(" OEM ID: %u\n", siSysInfo.dwOemId);
printf(" Number of processors: %u\n", siSysInfo.dwNumberOfProcessors);
printf(" Page size: %u\n", siSysInfo.dwPageSize);
printf(" Processor type: %u\n", siSysInfo.dwProcessorType);
printf(" Minimum application address: %lx\n", siSysInfo.lpMinimumApplicationAddress);
printf(" Maximum application address: %lx\n", siSysInfo.lpMaximumApplicationAddress);
printf(" Active processor mask: %u\n", siSysInfo.dwActiveProcessorMask);
}

七擒关羽 2011-09-15
  • 打赏
  • 举报
回复
32位 int 和 long 一样,64位 long对 int 大,不用库函数

扎实点看书
turing-complete 2011-09-15
  • 打赏
  • 举报
回复
sizeof(long)
xunxun 2011-09-15
  • 打赏
  • 举报
回复
windows参考这个
http://blog.csdn.net/fanner01/article/details/6562924
就想叫yoko 2011-09-15
  • 打赏
  • 举报
回复
GetSystemInfo
http://msdn.microsoft.com/en-us/library/ms724381(v=VS.85).aspx

65,202

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧