Joseph Cooper 2019-03-31 17:20 采纳率: 0%
浏览 314
已采纳

有大佬知道我的二进制文件读取出了什么问题吗???

#include "stdio.h"
#include "stdlib.h"

typedef struct {
    char stu_ID[14];
    char stu_Name[4];
    char stu_Major[10];
    int stu_Score;
}STU;
int main()
{
    FILE *fp;
    STU obj[101];
    int index = 1, n, i = 0;

    //Data_In_B(fp, obj);

    fp = fopen("cet4.dat", "rb");

    while(!feof(fp))
    {
        fread(obj,sizeof(STU),1,fp);
        printf("%s %s %s %d\n",
            obj[0].stu_ID, obj[index].stu_Name, obj[0].stu_Major, obj[0].stu_Score
            );
    }
    fclose(fp);
    return 0;
}

图片说明
图片说明
图片说明

  • 写回答

2条回答 默认 最新

  • Joseph Cooper 2019-04-08 16:44
    关注

    在读取二进制文件时需要确保文件数据是以二进制方式写入的,如果以十进制方式写入的文件时无法用二进制读取方式正确读取的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?