2010-09-29 90 views

回答

2

由於您使用的是Visual Studio,因此可能您的目標平臺(以及您使用的庫)將以Windows爲目標。 Win64平臺使用LLP64型號(http://msdn.microsoft.com/en-us/library/aa384083.aspx),其中intlong是32位。在這種情況下,我認爲嘗試使long成爲64位類型是徒勞的。

使用int64_t(從stdint.h)或long long或相似獲得一個64位的整數類型

1
typedef __int64 long; 

那種討厭的事情。

+0

不起作用。您收到錯誤syaing __int64後跟long是非法的。 – Reflux 2010-09-29 16:59:53

+0

嗯,#define long __int64 :-) – BarsMonster 2010-09-29 17:01:07