Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++;Java long的变体? 是否有C++变体,用于长< /Cord>原始数据类型? C++ 长< /C> >只有4字节,而java 长< /C> > 8字节。 < P> >:C++中是否有一个大小为8字节的非十进制基元类型? 也许用一些技巧 谢谢< /P> C++ >有长Lo/Eng> >类型,长度为64位(大多数平台)。 代码>类型,相当于Java的长< /C>。gcc具有int64\t。ISO C99标准中甚至定义了long-long-int类型,但根据该标准,它至少有64位宽,但可能更宽 除了尺寸之外,还有一些需要考虑的问题。Java标准要求使用big-endian,但使用C时,endian始终依赖于平台。_Java_C++_Long Integer_Primitive Types - Fatal编程技术网

C++;Java long的变体? 是否有C++变体,用于长< /Cord>原始数据类型? C++ 长< /C> >只有4字节,而java 长< /C> > 8字节。 < P> >:C++中是否有一个大小为8字节的非十进制基元类型? 也许用一些技巧 谢谢< /P> C++ >有长Lo/Eng> >类型,长度为64位(大多数平台)。 代码>类型,相当于Java的长< /C>。gcc具有int64\t。ISO C99标准中甚至定义了long-long-int类型,但根据该标准,它至少有64位宽,但可能更宽 除了尺寸之外,还有一些需要考虑的问题。Java标准要求使用big-endian,但使用C时,endian始终依赖于平台。

C++;Java long的变体? 是否有C++变体,用于长< /Cord>原始数据类型? C++ 长< /C> >只有4字节,而java 长< /C> > 8字节。 < P> >:C++中是否有一个大小为8字节的非十进制基元类型? 也许用一些技巧 谢谢< /P> C++ >有长Lo/Eng> >类型,长度为64位(大多数平台)。 代码>类型,相当于Java的长< /C>。gcc具有int64\t。ISO C99标准中甚至定义了long-long-int类型,但根据该标准,它至少有64位宽,但可能更宽 除了尺寸之外,还有一些需要考虑的问题。Java标准要求使用big-endian,但使用C时,endian始终依赖于平台。,java,c++,long-integer,primitive-types,Java,C++,Long Integer,Primitive Types,自C++11以来,在标题中有。 在您的场景中,您可能希望使用std::int64\t或std::uint64\t 因为它是C++11语言规范的一部分,所以应该保证平台和编译器的兼容性。从技术上讲,它不支持,但大多数编译器都支持它(以及C的stdint.h头,它定义了int64_t和uint64_t)作为扩展。仅在C++0x中标准化,不是现在的C++03。你说的“Java标准要求使用big-endian”是什么意思?Java基元类型是从其内容的实际低级存储中抽象出来的,因此无法判断特定Java虚拟

自C++11以来,在
标题中有。 在您的场景中,您可能希望使用
std::int64\t
std::uint64\t


因为它是C++11语言规范的一部分,所以应该保证平台和编译器的兼容性。

从技术上讲,它不支持,但大多数编译器都支持它(以及C的
stdint.h
头,它定义了
int64_t
uint64_t
)作为扩展。仅在C++0x中标准化,不是现在的C++03。你说的“Java标准要求使用big-endian”是什么意思?Java基元类型是从其内容的实际低级存储中抽象出来的,因此无法判断特定Java虚拟机使用的是哪种endian。@jarnbjo:好的,完全准确地说:Java标准要求基元在任何重要的地方(例如在类文件内)的行为都像是big endian一样,或者当它们被序列化时。Java标准并不要求大端性。在Java中,您没有直接访问内存的权限(没有指针),因此不需要强制使用任何endian。这与java VMS如何在运行时在内部存储和管理原始时间无关。注意到,由标准定义的It64的T可以在CSTNDET或STDITET.H中驻留,因此,C++中的GCC的发明版<代码>长< /C> >并不总是4字节(32位);原则上,
long
的大小取决于系统(在不同的操作系统或编译器上可能大小不同)。在Java中,它总是64位的,不管底层平台是什么。