Binresist
2015-07-20 01:45
采纳率: 76.9%
浏览 3.0k

C/C++如何真正读取一行?

如题,在项目中遇到一个问题,需要把项目文件中的复合某种条件的语句全部读取出来,写入文件。
可是,实际行动的过程中,发现一个问题,那就是文件中有很多事.c文件,里面会有很多的诸如\0,\n等这样的东西,那c++得getline是不是就没办法用?
很纠结,因为要读取出来判断是否符合条件,所以肯定是要读到某个缓冲区中的,请教诸位大神,是否有办法?

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • 欧阳春晖 2015-07-20 02:14
    已采纳

    c/c++是\0为字符串结束符,你字符串怎么会中间存在\0,\n都不算无效字符,只有遇到\0所以楼主不要担心,字符串中间不可能出现\0
    \0基本表示字符串结束了

    打赏 评论
  • 欧阳春晖 2015-07-21 09:01

    楼主,我上次忘了说了,gitline是输入函数,之所以遇到\n就结束是因为gitline认为用户\n是输入结束,你也可以自己封装一个字符串输入函数,一次读一个字符就行了

    打赏 评论
  • notfindjob 2015-07-25 10:50

    自己写函数判断输入的\n asII码,存在表示一行结束

    打赏 评论
  • 恋喵大鲤鱼 2015-09-20 00:36

    没有记错的话,使用getline指定输入流对象和行结束符就可以一行一行的读取了。默认是cin和\n符。

    打赏 评论

相关推荐 更多相似问题