在 C# 中将位从有符号变量复制到相同大小的无符号变量的最佳方法

Best way to copy bits from a signed to an unsigned variable of same size in C#

在 C++ 或 C 中,我要么使用 memcpy,要么使用这样的指针:

uint16_t b = NULL;
int16_t signed_val = -50;
uint16_t b = *(int16_t*)&signed_val;

我知道 C# 支持指针,但我尽量避免在这种情况下使用它们。我想不出更明智的解决方案。

你试过简单的方法吗?

short signed_val = -50;
ushort unsigned_val = (ushort)signed_val;

unsigned_val = 65486