注册 登录
编程论坛 C语言论坛

关于文件操作的FILE结构体问题

a451410 发布于 2024-11-24 20:53, 112 次点击
在我的编译器中 vs2022 中,我用FILE定义了一个文件指针,可是怎么也读不对内容,所以我按F12查看了一下结构体,
记过令我把百思不得其解,在我的vs2022里,FILE是这样的:
程序代码:
#ifndef _FILE_DEFINED
    #define _FILE_DEFINED
    typedef struct _iobuf
    {
        void* _Placeholder;
    } FILE;
#endif

令我百思不得其解,它只是一个void指针.但是我在网上以及msdn里查看的都是以下这样:
程序代码:
struct _iobuf

 {   
    char *_ptr;         
    int   _cnt;         
    char *_base;         
    int   _flag;         
    int   _file;         
    int   _charbuf;         
    int   _bufsiz;         
    char *_tmpfname;         
  }; typedef struct _iobuf FILE;

不知道怎么回事,而且,F12之后也不在stdio头文件中
2 回复
#2
forever742024-11-24 21:25
我从未关心过FILE结构体的内容和定义位置,因为我不需要。
正常用就行了。
读不对内容应该另有原因,权限啊,属性啊,编码啊,等等。
#3
a4514102024-11-25 15:12
回复 2楼 forever74
确实不需要这个结构体,用任何一个指针都可以访问到数据.
只是很奇怪为什么这个vs2022会这样,不知道是软件问题,还是sdk问题.
1