0

所以我有三个 selectedSegmentIndex。我们称它们为 S1、S2、S3。

它们按从左到右的顺序排列,每个索引为 2(0 和 1)。我想为每个段转换选择的索引并将它们转换为整数。例如:

S1.selectedSegmentIndex = 0;
S2.selectedSegmentIndex = 1;
S3.selectedSegmentIndex = 1;

这表示二进制的 011 或十进制的 3。从 selectedSegmentIndex 到小数很容易,因为您只需将它们相加:S1.selectedSegmentIndex*4 + S2.selectedSegmentIndex*2 + S3.selectedSegmentIndex,产生 3。我遇到问题的部分是从整数和填充列出这三个 selectedSegmentIndex。有没有人想对这个进行一番尝试?谢谢!

4

1 回答 1

1

用于>>将所需位置于位置 0,然后用于&关闭所有其他位。

s1.selectedSegmentIndex = (bits >> 2) & 1;
s2.selectedSegmentIndex = (bits >> 1) & 1;
s3.selectedSegmentIndex = (bits >> 0) & 1;
于 2013-08-13T00:14:55.980 回答