gpt4 book ai didi

c - 向右移动/我做错了什么?

转载 作者:太空宇宙 更新时间:2023-11-04 00:19:47 24 4
gpt4 key购买 nike

没有按预期工作,因为它没有正确设置 MSB 位。我正在使用 metrowerks 编译器。

//shifting right 5 characters
char * buffer;
buffer=global_buffer;
for(i=0;i<5;i++) //shift right for 1;
{
buffer[17-i]=(buffer[17-i]>>1)|(buffer[17-i-1]<<7);
}

编辑输入缓冲区(就在 for 循环之前)0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x2F,0xA0,0xC6,0x9D

我得到了 for 循环0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x17,0xD0,0xE3,0xCE

最佳答案

你可能想要“unsigned char *buffer;”这会将零移到最高位,而不是保留符号位。

关于c - 向右移动/我做错了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1902572/

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