我正在尝试学习一个需要包含头文件的SDK。头文件中有两个语句
typedef long long SomeIdentifier_SInt64;
和
typedef unsigned long SomeIdentifier_UInt64;
编译器(MSVC ++ 6)抱怨这是非法的。如果是这样,这是否意味着SDK被破坏了?我严重怀疑是这种情况。这在其他编译器中是否合法?有没有办法解决这个问题?
感谢。
我的环境是MS Windows XP Pro 32位。
答案 0 :(得分:1)
VC6太老了,太破了,不知道“长久”。它将编译__int64。 VS200x没有问题。
答案 1 :(得分:1)
您需要使用2003年2月版的Platform SDK。
答案 2 :(得分:0)
MSVC6是一个非常古老而又糟糕的编译器。他们的最新版本更好(更好),您可以在their website免费下载。
它确实支持__int64
和unsigned __int64
,因此如果由于某种原因您无法使用最新版本,则可以搜索SDK标头并替换long long
的每个实例找到。