typedef struct _iobuf{ char* _ptr; int _cnt; char* _base; int _flag; int _file; int _charbuf; int _bufsiz; char* _tmpfname; } FILE;
我试着打印它们,但我不明白它们的含义。 这里C中的FILE关键字究竟是什么? 他说:“有些人认为,正确思想中的任何人都不应该利用这种结构的内部结构。” 但他没有解释他们的意思。
如果您想知道这些字段的含义,请查看实现基于FILE的IO调用的系统运行时库的源代码。
如果你编写依赖于使用这些字段的代码,那么它最多是不可移植的,最糟糕的是完全错误,并且绝对容易破解。 例如,在Solaris上,只有普通的libc运行时库中至少有三种不同的FILE结构实现,其中一种实现(64位实现)是不透明的,您无法访问任何字段。 只需更改编译器标志即可更改代码使用的FILE结构。
这只是单个操作系统的一个版本。
_iobuf::_file
可用于获取内部文件编号,对需要文件号的函数很有用。 例如: _fstat()
。
以上就是c/c++开发分享FILE结构成员在C中的含义是什么?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/518942.html