gpt4 book ai didi

c - 按位运算位检查

转载 作者:行者123 更新时间:2023-11-30 17:14:12 25 4
gpt4 key购买 nike

这是检查某个变量中是否设置了位并将它们存储在另一个变量中的正确方法吗?只需忽略变量名称,image[] 和 mask 变量为 1 个字节,first_hline_first_row 和 secondary_hline_first_row 为 2 个字节。

 for(i=0; i<16; i++){

if(image[i] & mask1) first_hline_first_row |= (1<<i);
else first_hline_first_row &=~ (0<<i);

if(image[i] & mask2) second_hline_first_row |= (1<<i);
else second_hline_first_row &=~ (0<<i);
}

最佳答案

有两件事:

  • image[i] & mask1只检查是否image[i]mask1至少有一点共同点。这是你的意图吗?
  • first_hline_first_row &=~ (0<<i);什么都不做( ~(0<<i) 都是 1)。

从评论中我猜测这就是您要写的内容:

for(i=0; i<16; i++){
if(image[i] & mask1)
{
first_hline_first_row |= (1<<i);
}
else
{
first_hline_first_row &=~ (1<<i);
}

if(image[i] & mask2)
{
second_hline_first_row |= (1<<i);
}
else
{
second_hline_first_row &=~ (1<<i);
}
}

关于c - 按位运算位检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30440175/

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