gpt4 book ai didi

c# - 将 12 位 int 转换为 16 或 32 位

转载 作者:太空狗 更新时间:2023-10-29 20:47:39 28 4
gpt4 key购买 nike

所以我正在从一个字节数组中读取一个 12 位整数。这个数字可以是负数,但我不知道如何在 c# 中将其转换为可用变量 int16/int32。感觉我需要做一些移位或其他按位操作,但到目前为止我一直在努力。有人能指出我正确的方向吗。

变量 x = 0xFFF;

这需要打印为 -1,但 C# 自然转换为 int32 并打印为 4095。如果需要转换为 int16 或 int32,我该如何保留负值。

最佳答案

32 位:

x = (x >> 11) == 0 ? x : -1 ^ 0xFFF | x;

关于c# - 将 12 位 int 转换为 16 或 32 位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10876265/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com