有大佬知道我的二进制文件读取出了什么问题吗???
#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个回答

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

这个文件不能用二进制方式读取吧,直接普通方式读取

weixin_43444989
Joseph Cooper 额,那怎么才能读取到上面这种效果呢,从二进制文件中
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐