gpt4 book ai didi

c - 查找数字二进制位置

转载 作者:太空宇宙 更新时间:2023-11-03 23:29:43 27 4
gpt4 key购买 nike

我有一个 8 位整数,例如 20(二进制 - 00010100)。我怎样才能找到这些数字在二进制表示中的位置?我可以使用 2 的幂为单个人做到这一点,但对于多个人,我被卡住了

最佳答案

你可以在一个循环中测试每一位,例如

char val = 0x42;

for (int i = 0; i < CHAR_BIT; ++i)
printf("bit %d = %d\n", i, (val & (1 << i)) != 0);

或者更简洁:

for (int i = 0; i < CHAR_BIT; ++i)
printf("bit %d = %d\n", i, (val >> i) & 1);

关于c - 查找数字二进制位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18872575/

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