将一串十六进制字符转换为半字节数组(面试经验)

时间:2013-11-04 10:46:55

标签: c# nibble

我在面试经历中看到这个问题没有得到解答

首先,我需要了解这个问题,

(一个半字节对应单个十六进制字符对吗?)所以,如果给出十六进制字符串“12A”,则输出应为

arr[0]=0001
arr[1]=0010
arr[2]=1010

是正确的还是我误解了?

如果是这样,我如何在C#中实现这一点?什么类型的 arr 在这里?

1 个答案:

答案 0 :(得分:2)

半字节是四位二进制。因此,您需要三个半字节来表示12A

你所拥有的arr不正确 - 因为二进制文件中没有2

arr[0]=0001
arr[1]=0010
arr[2]=1010

对于c#实现,请参阅 - How can you nibble (nybble) bytes in C#?