正如我在很多问题中所解释的,我试图将软件从32位系统移动到64位系统。 我有some problem with malloc() function,但现在我通过更正参数来解决它。C++函数检查软件是否在32位或64位系统上运行
在我的代码的一部分,如果我在32位系统上运行,我可以使用:
(INT **)malloc的(常量*的sizeof(int)的)
但是,在64位系统上,我必须使用:
(INT **)malloc的(常量*的sizeof(的int64_t))
我想要一个如果()条件来管理这些十字路口,所以我需要一个布尔isIt64system()函数的行为是这样的:
如果(isIt64system()),然后[64比特码]
别的[32位代码]
这是否功能在C++存在吗? 是否有任何函数告诉我软件是否在32位系统或64位系统上运行?
那么你的意思是说你在两个不同的平台上运行相同的二进制文件? – Matt 2012-04-19 12:31:32
[在C++中确定32位和64位]可能的重复(http://stackoverflow.com/questions/1505582/determining-32-vs-64-bit-in-c) – Anonymous 2012-04-19 12:33:43
正确的方法是' (int **)malloc(count * sizeof(int *))'或甚至更好'new int * [count]'。 – Henrik 2012-04-19 12:33:59