1

我读了一个整数:

is >> myInteger;

现在我想知道读取了多少位(我说的是可能的前导零)。我怎样才能做到这一点?

4

2 回答 2

5

你可以:

  • 将值作为字符串获取,然后根据需要单独解析(检查长度、计数零等)。

  • 为此使用 is.tellg;请记住,tellg 将为您提供缓冲区位置,而不是那些位置的内容(可能是空格字符或零)

  • 使用 is.get 逐字符读取缓冲区,然后根据需要处理值。

于 2014-07-02T10:02:51.570 回答
2

您可以在输入整数之前获取is.tellg()的值,然后再次获取它并找出差异。

编辑:尽管正如评论中指出的那样,它们只会告诉您消耗了流的多少元素,其中一些可能是空格。

于 2014-07-02T09:56:48.467 回答