代码之家  ›  专栏  ›  技术社区  ›  Andrew Tomazos

G在gcount、tellg和seekg中代表什么?

  •  69
  • Andrew Tomazos  · 技术社区  · 6 年前

    什么是 G 站在里面 std::iostream gcount , tellg seekg 成员?以及 在里面 pcount , tellp seekp ?

    他们为什么不打电话 count , tell seek ?

    2 回复  |  直到 6 年前
        1
  •  76
  •   Alex Taylor    6 年前

    在支持读和写的流中,实际上有两个位置,一个用于读(即“get”表示“g”),一个用于写(即“put”表示“p”)。

    这就是为什么你有一个 seekp (继承自 basic_ostream )和 seekg (继承) basic_istream )

    边注:语言C与C++相比只有一个这样的函数 fseek 对于两个指针,在从读到写切换时需要重新定位指针,反之亦然(例如, this 回答)为了避免这种情况,C++分别提供了独立的读写功能。

        2
  •  46
  •   Rakete1111    6 年前

    C++在导航文件时提供了两个指针: 得到 指针和 指针。第一个用于读操作,第二个用于写操作。

    • seekg() 用于移动 G 相对于参考点,指向所需位置的ET指针。

    • tellg() 习惯于知道 ET指针在文件中。

    • seekp() 用于移动 相对于参考点指向所需位置的UT指针。

    • tellp() 习惯于知道 UT指针在文件中。

    主要来源: Quora 回答 冈扬布雅达夫 2017年12月1日。