gpt4 book ai didi

c - 读取二进制文件时,是什么导致 0xA4 变成 0xffffffa4?

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

<分区>

我在用 C 语言加载二进制文件时得到了意想不到的结果。

FILE *bin = NULL;
unsigned long file_length = 0;

bin = fopen("vs.bin", "rb");
fseek(bin, 0, SEEK_END);
file_length = ftell(bin);
fseek(bin, 0, SEEK_SET);

char *buffer = (char *)malloc(file_length);
fread(buffer, 1, file_length, bin);

for(unsigned int i = 0; i < file_length; i++) {
printf("%02x ", buffer[i]);
}
printf("\n");

我在输出的前八个值中看到的是这样的:

56 53 48 05 ffffffa4 ffffff8b ffffffef 49

但是当我在十六进制编辑器中打开二进制文件时,我看到的是这样的:

56 53 48 05 A4 8B EF 49

什么会导致这种情况发生?整个过程中发生了更多这种情况,但我认为仅共享第一部分就足以说明问题。

感谢阅读。

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