当前位置: 技术问答>linux和unix
long数据类型在32为或者64的不同平台上,sizeof(long)是否不变?
来源: 互联网 发布时间:2015-11-26
本文导语: 都是4个字节吗? | 不一定,要看平台和硬件。 在windows64(on AMD64, Intel E64T, Itanium)上long似乎依然保持32bit,但指针是64bit的。 在Tru64上也可以通过编译选项使用32bit的指针。 其他: FreeBSD on AMD...
都是4个字节吗?
|
不一定,要看平台和硬件。
在windows64(on AMD64, Intel E64T, Itanium)上long似乎依然保持32bit,但指针是64bit的。
在Tru64上也可以通过编译选项使用32bit的指针。
其他:
FreeBSD on AMD/Opteron,
Solaris on Sparc64,
HP/UX on Itanium 64,
HP/UX on PA-RISC 64,
Linux on Alpha,
sizeof(long)=8
在windows64(on AMD64, Intel E64T, Itanium)上long似乎依然保持32bit,但指针是64bit的。
在Tru64上也可以通过编译选项使用32bit的指针。
其他:
FreeBSD on AMD/Opteron,
Solaris on Sparc64,
HP/UX on Itanium 64,
HP/UX on PA-RISC 64,
Linux on Alpha,
sizeof(long)=8
|
那得看编译器得实现,有些编译就是64bit的,有些只是32bit,有些还把long=int