gpt4 book ai didi

c - 从 bin 文件 c 的缓冲区解析数据

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

我有一个包含一些数据的 bin 文件,我应该读取该数据并将其存储在变量中。问题是我不知道如何解析缓冲区中的数据。

FILE *file;
char *buffer;

//Abre o ficheiro
file = fopen("retail.bin", "rb");
if (!file)
{
printf("Erro ao abrir %s\n", "retail.bin");
return;
}

//Lê o conteúdo do ficheiro
while(fread(&buffer, sizeof(int), 1, file) == 1){
printf("%d", buffer);
}

fclose(file);

输出:5332447781255245121922331223201212221130521346233464424771744014853171181191324334437515052573583

我想要的是能够分别访问每个号码。我试过:printf("%s", buffer[0]);

但是程序停止工作了。

最佳答案

你有几个问题。第一个是您传递一个指向 fread 的指针。另一种是将整数读入 char 缓冲区,即字符串。第三个是 buffer 没有分配,指向内存中的随机位置。第四种是将“字符串”打印为整数。

如果要读取一个整数,那么读入一个整数:

int value;
fread(&value, sizeof(value), 1, file);
printf("%d", value);

关于c - 从 bin 文件 c 的缓冲区解析数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16569728/

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