我正在开发一个需要int64变量函数的应用程序。我被告知offset64或int64_t对我的需要是可行的...... 但我只想在32位系统下使用int64的原型... 我该如何使用变量。 它是由两个ULONG组成的结构吗? thanx!
答案 0 :(得分:2)
编译器通常没有理由不支持64位整数类型 透明地在32位(或更小)平台上,因为它可以生成代码 必须在使用时以较小的块处理它们。据我所知 任何符合C99标准的编译器都应该透明地支持64位类型 通过stdint.h头文件定义类型如int64_t和 您可以像使用任何其他整数类型一样使用它们。
[编辑]示例:
#include <stdint.h>
#include <stdio.h>
int main(void) {
int64_t x = 0x1000000000LL;
x = x*2;
printf("%llX\n", x);
}
答案 1 :(得分:1)
使用long long,msvc和gcc都支持它。