gpt4 book ai didi

c - 按位与 C 中的 HEX 和 CHAR

转载 作者:太空宇宙 更新时间:2023-11-04 01:08:21 25 4
gpt4 key购买 nike

我真的很沮丧。在尝试实现 CRC-CCITT 算法时,我在 Internet 站点上找到了一个非常好的示例。

有一行的输出我完全不明白:

unsigned short update_crc_ccitt( unsigned short crc, char c){
[...]
short_c = 0x00ff & (unsigned short) c;
[...]
}

我想计算 "test" 字符串 "123456789" 的 CRC。所以在第一次运行时,char 'c' 是 1。根据我的理解,第一次运行的 short_c 也应该等于 1,但是当我将它打印到控制台,我得到 short_c = 49 for c = 1。怎么办?

0x00ff in binary is: 1 1 1 1 1 1 1 1 
char 1 in binary is: 0 0 0 0 0 0 0 1
bitand should be : 0 0 0 0 0 0 0 1

我的错误在哪里?

最佳答案

字符 1 的 ASCII 码为 0x31 = 49。这与 ASCII 码为 1 的字符(^A)不同。

关于c - 按位与 C 中的 HEX 和 CHAR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18652206/

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