首页 新闻 搜索 专区 学院

C语言——文件内部位置指针问题

0
悬赏园豆:50 [已关闭问题] 关闭于 2019-07-22 19:45

最近在看文件操作函数时对文件内部的位置指针有点疑惑

测试代码:

  pos = ftell(fp);
    
    while (!(flag = feof(fp)))
    {
        fscanf_s(fp, "%c", &ch, 1);
        pos = ftell(fp);
    }

测试文本文件:

断点调试结果:

我对文件指针内部的成员_ptr的理解是“下一个要被读取的字符的地址”

对上面的测试结果我假设了两种文件开头和文件结尾的位置
第一种:文件开头的地址与文本文件中第一个字符'1'的地址相同,文件结尾的地址是文本文件最后一个字符的后一位,如下图

第二种:文件开头的地址是文本文件中的第一个字符'1'的前一位,文件结尾的地址与文本文件最后一位字符'3'的地址相同,如下图

现在不是很清楚是第一种还是第二种地址分布,其实就是对文本文件的首尾的理解很模糊,没搞清楚边界

望不吝赐教,不胜感激

蓝海人的主页 蓝海人 | 初学一级 | 园豆:52
提问于:2019-07-22 19:45
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册