Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 位数组到整数问题 public static int getIntegerFromBitArray(位数组位数组) { var结果=新整数[1]; bitArray.CopyTo(结果为0); 返回结果[0]; } //输入A)01110 //产出A)14 //输入B)0011 //输出B)12_C#_Bitarray - Fatal编程技术网

C# 位数组到整数问题 public static int getIntegerFromBitArray(位数组位数组) { var结果=新整数[1]; bitArray.CopyTo(结果为0); 返回结果[0]; } //输入A)01110 //产出A)14 //输入B)0011 //输出B)12

C# 位数组到整数问题 public static int getIntegerFromBitArray(位数组位数组) { var结果=新整数[1]; bitArray.CopyTo(结果为0); 返回结果[0]; } //输入A)01110 //产出A)14 //输入B)0011 //输出B)12,c#,bitarray,C#,Bitarray,基本上,它以与预期相反的顺序考虑位-您没有显示如何将输入二进制映射到位数组,但结果是将其视为1100而不是0011 诚然,文档并不清楚,但它确实按照我预期的方式工作:bitArray[0]表示最低有效值,就像通常讨论二进制时一样(所以位0是0/1,位1是0/2,位2是0/4,位3是0/8等等)。例如: public static int getIntegerFromBitArray(BitArray bitArray) { var result = new int[1]; bitArra

基本上,它以与预期相反的顺序考虑位-您没有显示如何将输入二进制映射到
位数组,但结果是将其视为1100而不是0011

诚然,文档并不清楚,但它确实按照我预期的方式工作:
bitArray[0]
表示最低有效值,就像通常讨论二进制时一样(所以位0是0/1,位1是0/2,位2是0/4,位3是0/8等等)。例如:

public static int getIntegerFromBitArray(BitArray bitArray)
{
  var result = new int[1];
  bitArray.CopyTo(result, 0);
  return result[0];
}

// Input  A) 01110
// Output A) 14
// Input  B) 0011
// Output B) 12 <=== ????? WHY!!! :)

基本上,它是以与预期相反的顺序考虑位的-您没有显示如何将输入二进制映射到
位数组
,但结果是将其视为1100而不是0011

诚然,文档并不清楚,但它确实按照我预期的方式工作:
bitArray[0]
表示最低有效值,就像通常讨论二进制时一样(所以位0是0/1,位1是0/2,位2是0/4,位3是0/8等等)。例如:

public static int getIntegerFromBitArray(BitArray bitArray)
{
  var result = new int[1];
  bitArray.CopyTo(result, 0);
  return result[0];
}

// Input  A) 01110
// Output A) 14
// Input  B) 0011
// Output B) 12 <=== ????? WHY!!! :)

你们需要将钻头旋转到正确的方向才能得到正确的结果。1100是12

您需要将位旋转到正确的方向以获得正确的结果。1100是12

请告诉我们您是如何使用此方法的,输入A和b是如何生成的。请告诉我们您是如何使用此方法的,输入A和b是如何生成的。第一个输入(
01110
)是对称的,所以他没有注意到+1一旦您尝试实现CopyTo之类的功能,顺序实际上就非常合理。第一个输入(
01110
)是对称的,所以他没有注意到+1一旦您尝试实现CopyTo之类的功能,顺序实际上是非常合理的。不,这里不需要旋转,这是反射。例如,如果OP的输入是1101,结果将是11(8+2+1),你不能通过旋转1101的位模式来获得它……是的,你是对的。我的意思是旋转180;)。反思在这里最合适。如果1101旋转180,我们得到1011。11^10=1011^2不清楚你是否轻率,但如果你不轻率,“旋转180”通常意味着“旋转180位”-我永远不会用“旋转”这个词来表示“反射”。反射在这里最合适。不,这里不需要旋转-这是反射。例如,如果OP的输入是1101,结果将是11(8+2+1),你不能通过旋转1101的位模式来获得它……是的,你是对的。我的意思是旋转180;)。反思在这里最合适。如果1101旋转180,我们得到1011。11^10=1011^2不清楚你是否轻率,但如果你不轻率,“旋转180”通常意味着“旋转180位”-我永远不会用“旋转”这个词来表示“反射”。反射在这里最合适。