eagleyeeee 2015-12-28 08:42 采纳率: 66.7%
浏览 3770

C++ fstream读写文件 文件指针

ifstream file;
.......
//中间有读写文件操作 
int i;

 i = file.tellg();
    file >> str1;
    file.seekg(i);
    file >> str2;

请问 这两个 str为什么不一样 我确认 在file>>str1和file>>str2这两个语句之前 seekg()
返回的值是一样的

  • 写回答

2条回答 默认 最新

  • 番茄比西红柿好吃 2015-12-28 13:11
    关注

    你这个问题。。。你在读取的文件末尾多添加一行试试

    错误的原因是,当file.eof() = 1 的时候,seekg函数会失效。。。比较好的结局方法就是seekg前判断是否在文件尾,然后好像是要重置吧

    希望能帮到你

    评论

报告相同问题?

悬赏问题

  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记