我正在尝试读取包含hex的二进制文件。正如您从二进制文件的图片中看到的那样。但是,输出不会产生01.我已经打开了文件,我使用fseek()指向文件的开头。下面我的程序中有三行应打印出01。
unsigned char begintag[2];
fread(&begintag,1,1,ptr_myfile);
printf("%x",begintag);
答案 0 :(得分:1)
您将begintag
声明为数组,因此不应在&&
调用中放置&符号fread
。现在,您将从文件读取的值分配给变量指向的内存地址值。以下代码打印调用"in.bin"
和fseek
的{{1}}文件中第一个字节的十六进制值。虽然您可以简单地使用fread
来读取字节:(警告:此处没有错误检查)
fgetc