我在将二进制值存储到unsigned int
数组中时遇到了一些问题。我试图通过二进制表示作为一个char
阵列,但它并不像我所希望的那样工作。我正在做的是通过char
阵列使用while
循环,并将每个数字分配给unsigned int
数组的一个元素,但这是完全错误的。我只是非常想知道如何将二进制值存储到unsigned int
。我如何在前面显示零?我已经尝试在阵列中放入前面没有0
s的二进制值,但那不起作用。我可以将二进制值转换为int
值,然后在打印时将其转换回来?将二进制值存储到unsigned int数组中
下面是功能
void setstring(unsigned int array[10], char *bitString) {
len=strlen(bitString);
for (int i=1; i<=10; i++) {
for (int p=1; d%32!=0; d++) {
array[10-i]=bitString[len-];
}
}
}
的印刷只是为了打印bitString
或阵列的基本代码,但目前没有什么是打印的。打印只是一个for
循环,循环遍历unsigned int
数组。
“二元”是什么意思?真/假,还是某种位掩码?如果您展示您正在尝试执行的相关代码示例,也许会更容易。 – Evert
我的意思是在1和0的32位字符串中。我试图存储在一个unsigned int。我会尽量把它放在我的代码中,但我认为这是完全错误的。 – danielwestfall
请编辑你的问题,并给出一个最小的例子,包括观察和预期的输出。 – datell