【发布时间】:2015-09-10 12:45:22
【问题描述】:
假设我有一个文件指针
FILE* infile = fopen("<somefilepath", "r");
现在当我取消引用 gdb 中的文件指针时,我得到了
打印 *infile
│$2 = {_flags = -72539000, _IO_read_ptr = 0x0, _IO_read_end = 0x0,
│ _IO_read_base = 0x0, _IO_write_base = 0x0, _IO_write_ptr = 0x0,
│ _IO_write_end = 0x0, _IO_buf_base = 0x0, _IO_buf_end = 0x0,
│ _IO_save_base = 0x0, _IO_backup_base = 0x0, _IO_save_end = 0x0, _markers = 0x0,
│ _chain = 0x7ffff7dd41c0 <_io_2_1_stderr_>, _fileno = 3, _flags2 = 0,
│ _old_offset = 0, _cur_column = 0, _vtable_offset = 0 '\000', _shortbuf = "",
│ _lock = 0x6020f0, _offset = -1, __pad1 = 0x0, __pad2 = 0x602100, __pad3 = 0x0,
│ __pad4 = 0x0, __pad5 = 0, _mode = 0, _unused2 = '\000' }
谁能帮我理解这意味着什么?
【问题讨论】:
-
这就是
FILE在您的库实现中包含的内容。如果您想知道所有这些成员的意思,那么答案将太长,对于本网站来说既过于宽泛又过于具体.. -
对任何其他结构都意味着相同。