首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >fgetc只从文件中读取39个字节。

fgetc只从文件中读取39个字节。
EN

Stack Overflow用户
提问于 2022-09-04 19:36:23
回答 2查看 73关注 0票数 0

这个程序只读取39个字节。在这之后,一切都是'-1‘

代码语言:javascript
复制
#include <windows.h>
#include <stdio.h>
int main()
{
    FILE *file =fopen("Eva.wav","r");
    if (file==NULL)
        printf("heresy read!");
    
    for(int i=0;i<200;i++)
    {
        char a = fgetc(file);
        printf("%hhX ",a);
    }
    fclose(file);
    return 0;
}

在这里输入图像描述

我用fread函数重写代码。在39字节之后出现了一些绝对的其他字节代码。看起来像分段的文件。但是如果是这样,为什么fread和fget的结果是不同的呢?

代码语言:javascript
复制
C:\Users\phoenix\Documents\gccex\serial>a.exe
52 49 46 46 46 FF8C FFA3 0 57 41 56 45 66 6D 74 20 10 0 0 0 1 0 1 0 44 FFAC 0 0 44 FFAC 0 0 1 0 8 0 4C 49 53 54 FF86 FFAA 6A FFFB FFFE 7F 0 0 FF88 2C 40 0 0 0 0 0 0 0 0 0 0 0 0 0 10 15 40 0 0 0 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11 0 1 10 0 0 0 0 60 7 FF96 0 0 0 0 0 FF86 FFAA 6A FFFB FFFE 7F 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 FFB0 16 40 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50 13 FF96 0 0 0 0 0 FF83 16 40 0 0 0 0 0 1 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 70 13 FF96 0 0 0 0 0 FFB0 16 40 0 0 0 0 0 FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FF99 17 40 0 0 0 0 0 10 0 0 0 0 0 0 0 FF99 16 40 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0

读取文件的正确方法是什么?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73602276

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档