C# 相当于 64 位无符号长 C++

本文关键字:C++ 无符号 相当于 | 更新日期: 2023-09-27 18:31:41

我正在构建一个DLL,C++将使用COM使用它。请让我知道 C# 相当于 C++ 64 位unsigned long long

它会在 C# 中是 ulong 类型吗?请确认。

谢谢加根

C# 相当于 64 位无符号长 C++

也许这会帮助你:

  • ulong(64 位无符号整数)
  • double(64 位浮点数)。
对于超出

ulong的任何内容,您不妨使用 C# BigInteger 结构。

在C++中,整数类型的大小取决于程序是在 32 位还是 64 位计算机上运行,而 C# 整数类型与平台无关。因此,它们不可互操作。

相反,在 C# 中,有用于 P/Invoke 的 IntPtrUIntPtr 类型,它们的大小在 32 位计算机上为 4 字节,在 64 位计算机上为 8 字节,这使得它们分别等效于 C++ signed longunsigned long 类型。

从 C++11 开始,您可以使用这些:

  • int8_t
  • int16_t
  • int32_t
  • int64_t
  • uint8_t
  • uint16_t
  • uint32_t
  • uint64_t

无论如何,它们的大小都保证保持不变。

http://en.cppreference.com/w/cpp/types/integer。